最具影响力的数字化技术在线社区

168大数据

 找回密码
 立即注册

QQ登录

只需一步,快速开始

1 2 3 4 5
打印 上一主题 下一主题
开启左侧

SAP HANA Smart Data Access(一):初识SDA

[复制链接]
跳转到指定楼层
楼主
发表于 2014-9-30 10:26:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
引言
     SAP HANA的实际应用场景中,经常需要处理分析其他系统中的数据。多数情况下,客户选择数据复制的方法将数据从其他系统的数据源复试一份到SAP HANA,然后再做处理分析。数据复制不仅耗费时间和内存,而且通常需要部署额外的复制服务器来完成。SDA(Smart Data Access)为SAP HANA提供了访问远程数据源的另一种方式。
SDA简介
     SDA是SAP HANA访问SAP HANA Database以外数据源的一种数据访问技术。利用SDA,SAP HANA可以建立虚拟表(virtual table)映射到远程数据源,进而通过虚拟表访问远程数据源中的数据。SAP HANA可以像操作本地表一样操作虚拟表,如查询、更新、插入、删除等操作均适用于虚拟表。SDA支持本地表和虚拟表的连接,查询优化器将相关操作发送到远程数据源,远程数据源完成操作后将结果数据集返回给SAP HANA做进一步处理。
     SDA在SAP HANA SPS06版本中被引入,最初支持的数据源有:SAP  HANA、SAP Sybase  ASE、SAP  Sybase IQ、Teradata  database以及hadoop。SPS06中的SDA仅支持对虚拟表的读操作。SPS07版本丰富了SDA的数据源类型,增加了对MSSQL Sever、Oracle等数据源的支持,且允许对虚拟表的写操作。SPS06和SPS07版本SDA支持的特性对比如下表:


SPS06
SPS07
支持的数据源
SAP  HANA、SAP  Sybase ASE 15.7 ESD#4、SAP Sybase  IQ version 15.4 ESD#3 and 16.0、
Teradata  database version 13.0、Intel Distribution for Apache Hadoop version 2.3
SPS06支持的所有数据源,Oracle Database 12c、Microsoft SQL Server version 11 for SQL Server 2012
支持的虚拟表操作
select
select、insert、update、delete
     注意:SAP HANA官方支持的数据源限于以上指定版本,其他版本不能保证其正常工作。
创建数据源
     使用SDA访问远程数据必须先创建数据源。SDA通过ODBC与数据源建立连接并进行数据交互,关于数据源的部署将在本系列的后续文章中详细阐述,这里简单介绍一下如何在HANA Studio中创建数据源。
     在HANA Studio中可以通过图形化界面和SQL语句两种方式创建数据源。
1. 图形化界面创建远程数据库:
首先,打开“Provisioning”文件夹,鼠标右键点击“Remote Sources”,选择“New Remote Source…”;
然后,在弹出的对话框中选择合适的适配器,并填入相应数据源的连接信息和认证信息;
最后,点击运行按钮创建数据源。
2. 用SQL 语句创建数据源:
CREATE REMOTE SOURCE  <src_name>  ADAPTER <adapter_name> [CONFIGURATION FILE 'filename'] CONFIGURATION <connection_info_string> [opt_credentials_clause]
示例:
CREATE REMOTE SOURCE ORCL_11g_LNX ADAPTER "odbc" CONFIGURATION FILE ‘property_orcl.ini’ CONFIGURATION ‘DSN=oral11g_lnx' WITH CREDENTIAL TYPE ‘PASSWORD' USING ‘user=OUTLN;password=Aa111111';

以上SQL语句中,adapter_name可取: "ASEODBC" | "IQODBC" | "TDODBC" | "HIVEODBC" | "ODBC",分别用于创建Sybase ASE数据源,Sybase IQ数据源,Teradata Database数据源,Hadoop数据源和其他通用ODBC数据源。connection_info_string用于指定数据源的连接信息,通常在此给定DSN名称。opt_credentials_clause用于指定连接数据源的认证信息。注意,只有使用"ODBC"适配器时才需要指定CONFGURATION FILE,下一小节中将介绍CONFGURATION FILE的作用。
Generic Adapter Framework
    利用SDA,SAP HANA可以与支持ODBC接口的类数据库数据源进行交互。然而,如上文所述,目前SAP HANA支持的数据源有限。对于已支持的数据源,SAP HANA提供了内置代码进行支持(SPS07中加入的MSSQL Server和Oracle采用的是Generic Adapter Framework),而对于其他的ODBC数据源,SAP HANA不能保证其正常工作。阻碍SAP HANA支持更多ODBC数据源的主要约束是:这些ODBC数据源的一些操作和配置无法完全通过ODBC标准接口来处理。比如,为Sybase ASE准备一个transaction需要ODBC标准接口以外的代码(SAP HANA提供了内置代码支持ASE,所以这个操作在SDA中是可行的)。
     为了减轻这个问题带来的影响,SAP HANA采用Generic Adapter Framework实现与未支持的ODBC数据源的数据交互,而不是调用SAP HANA内置的针对特定数据源的专用代码。Generic Adapter Framework支持以配置文件的方式指定数据源的行为和功能,比如支持哪些操作、函数映射、数据类型映射等。为方便阐述,下文称该配置文件为“属性配置文件”。
     在创建数据源时,若指定的适配器是"ODBC",则SDA通过Generic Adapter Framework与数据源交互。SAP HANA会在DIR_EXECUTABLE环境变量指定的目录下寻找属性配置文件,属性配置文件的文件名由CONFIGURATION FILE选项指定。SAP HANA提供了MSSQL Server和ORACLE数据源的属性配置文件模板:property_mss.ini和property_orcl.ini,存在于$DIR_EXECUTABLE/config之下。
     数据源建好后,SAP HANA会解析其关联的属性配置文件,文件中定义的所有功能、函数映射、数据类型映射及其他属性都将与该数据源联系在一起并影响之后SAP HANA与该数据源之间的交互。
     下面是文件property_orcl.ini的部分内容,从中可看出属性配置文件的格式与功能:
创建数据源的典型过程
在SAP HANA中创建一个远程数据源通常涉及以下步骤:

    • 查看SAP HANA是否提供了针对该数据源的专用适配器;
    • 若提供了专用适配器,则使用适当的专用适配器(如"ASEODBC"、"IQODBC"、"TDODBC"等)创建数据源;
    • 若未提供专用适配器,则查看SAP HANA是否有针对该数据源类型的属性配置文件模板;如果有该数据源类型的属性配置文件模板,比如ORACLE、MSSQL,则基于该模板创建数据源的属性配置文件,用户可以将不需要的功能disable掉,也可以根据需要修改数据类型映射或函数映射等,但一定要确保这些修改对于该数据源是正确的;如果不存在模板,那么用户必须根据该数据源使用的驱动、该数据源支持的类型、函数等信息来自己创建一个全新的属性配置文件,这需要用户熟悉数据源的各项属性及其使用的驱动程序;
    • 使用通用适配器(即"ODBC"适配器)和3中创建的属性配置文件在HANA Studio中创建数据源。

注意:修改或创建属性配置文件时只需要设置与默认值不同的属性,不设置则使用默认值;属性配置文件中设置错误的属性值可能会导致数据源不正确的结果和行为。
创建虚拟表
     在HANA Studio中建好数据源后,可以将数据源中的表映射为SAP HANA中的虚拟表。虚拟表的创建也有图形化界面和SQL语句两种方式。
     1. 图形化界面创建虚拟表
     2.创建虚拟表的SQL语句如下:
CREATE VIRTUAL TABLE <table_name> <remote_location_clause>
示例:
CREATE VIRTUAL TABLE sda.vt AT "ORCL_11G_WIN"."NULL"."OUTLN"."CANDIDATES";
结束语
         本文简单概要地介绍了SAP HANA SDA的基本内容,本系列的后续文章将进一步讲解如何部署SDA数据源、如何利用SDA访问不同版本的Hadoop集群(SAP HANA SDA官方支持的Hadoop版本为Intel Distribution)等问题。


楼主热帖
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 赞 踩

168大数据 - 论坛版权1.本主题所有言论和图片纯属网友个人见解,与本站立场无关
2.本站所有主题由网友自行投稿发布。若为首发或独家,该帖子作者与168大数据享有帖子相关版权。
3.其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和168大数据的同意,并添加本文出处。
4.本站所收集的部分公开资料来源于网络,转载目的在于传递价值及用于交流学习,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
5.任何通过此网页连接而得到的资讯、产品及服务,本站概不负责,亦不负任何法律责任。
6.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源,若标注有误或遗漏而侵犯到任何版权问题,请尽快告知,本站将及时删除。
7.168大数据管理员和版主有权不事先通知发贴者而删除本文。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

关于我们|小黑屋|Archiver|168大数据 ( 京ICP备14035423号|申请友情链接

GMT+8, 2024-5-22 11:40

Powered by BI168大数据社区

© 2012-2014 168大数据

快速回复 返回顶部 返回列表