SAP HANA SDI的部署及简单使用

  • A+
所属分类:SAP

什么是SDI

SDI,即Smart Data Integration,是集成到HANA中的一个数据迁移和同步工具。通过SDI,我们可以用图形化的方式对远程数据源(如OracleDB2Hive等)的数据做过滤、连接、类型转换等操作,然后导入到HANA。

使用SDI要做的工作

  1. 启动HANADP Server
  2. 安装配置DP Agent
  3. 注册DP Agent
  4. 注册 Adapter
  5. 创建远程数据源及虚表
  6. 创建并激活数据流图
  7. 执行存储过程

启动HANADP Server

Data Provisioning ServerHANA的一个native进程,它与DP Agent或远程数据源进行数据交互。DP ServerHANA自带组件,不需要额外安装,但默认情况下DP Serverdisabled,所以我们需要将其enable。激活方法是:Configuration选项卡àdaemon.iniàdpserveràinstances1

SAP HANA SDI的部署及简单使用

该属性是change online,不需要重启HANA

DP Server启动完成后可以在Services选项卡中看到dpserver的状态为active

SAP HANA SDI的部署及简单使用

安装配置DP Agent

1. 从SAP Software Download Center下载DP Agent安装包“data_provision_agent_xxxxxxxx.zip”。

2. 解压zip包,将其中的DATA_UNITS\HANA_DP_AGENT_10_LIN_X86_64文件夹copy到要安装的linux机器上(当然你也可以安装windows版的)。

3. 执行./hdbinst

SAP HANA SDI的部署及简单使用

输入安装路径。

SAP HANA SDI的部署及简单使用

输入用于DP Agent服务的用户名、监听端口和管理端口。

4. 进入DP Agent安装路径,运行配置工具:

SAP HANA SDI的部署及简单使用

5. 在弹出的对话框中点击ConfigureàPreferences

SAP HANA SDI的部署及简单使用

在DP Agent的配置界面,你可以配置Adapter Framework和各个Adapter的参数,Adapter Framework的参数适用于所有Adapter,比如Worker Thread Pool是线程池的容量,即并行导入的最大线程数。

注册DP Agent

1. 运行DP Agent的配置工具:

SAP HANA SDI的部署及简单使用

SAP HANA SDI的部署及简单使用

2. 先要连接到一个HANA系统,点击Connect to HANA

SAP HANA SDI的部署及简单使用

在弹出的对话框中填入HANA系统的链接信息,这里既可以连接到On PremiseHANA,也可以连接到On CloudHANA。

3. 连接HANA之后就可以看到现有的所有Adapter

SAP HANA SDI的部署及简单使用

然后点击Register Agent按钮,弹出对话框:

SAP HANA SDI的部署及简单使用

点击Register按钮完成注册,注册成功后在HANA Studio中查看视图“SYS”.“AGENTS”:

SAP HANA SDI的部署及简单使用

可以看到”srsserverAgent”已经成功注册到HANA系统。

注册Adapter

DP Agent注册成功后,还需要将要连接的远程数据源对应的Adapter注册到HANA系统。

1. 将要连接的数据源的JDBC驱动文件(例如OracleJDBC驱动文件ojdbc6.jar)拷贝到DP Agent安装目录的lib子文件夹下:

/lib

默认为:/usr/sap/dataprovagent/lib

2. 在配置工具界面的Adpaters列表中选择远程数据源的Adapter,例如,要连接Oracle则选择OracleLogReaderAdapter,然后点击Register Adapter按钮。

SAP HANA SDI的部署及简单使用

3. Adapter注册成功后,在HANA中查看视图“SYS”.“ADAPTERS”

SAP HANA SDI的部署及简单使用

可以看到OracleLogReaderAdapter已经成功注册到HANA系统。

创建远程数据源及虚表

1. 创建SDI远程数据源和创建SDA远程数据源类似,在Adapter Name栏选择远程数据源对应的Adapter,例如连接Oracle则选择OracleLogReaderAdapter

2. 以Oracle数据源为例,Instance NameDP Agent中创建的实例名称,你可以使名称和数据源名称一致,Administration Port是该instance的管理端口,默认是13456。

SAP HANA SDI的部署及简单使用

3. 创建虚表方法和SDA一致。

创建并激活数据流图

1. 在repositoryHANA XS project中新建一个数据流图:

SAP HANA SDI的部署及简单使用

SAP HANA SDI的部署及简单使用

SAP HANA SDI的部署及简单使用

2. 使用拖拽的方式构建一个数据流图:

SAP HANA SDI的部署及简单使用

可以选中各个节点,然后在其属性框中设置其属性,例如,JOIN节点的属性框如下所示:

SAP HANA SDI的部署及简单使用

3. 保存并激活数据流图:

SAP HANA SDI的部署及简单使用

执行存储过程

1. 数据流图成功激活后,我们在数据流图所在的schema下可以看到生成了一个存储过程:

SAP HANA SDI的部署及简单使用

2. 存储过程内容如下:

 

3. 调用该存储过程即可完成数据导入。

参考资料

SAP HANA EIM Administration Guide

SAP HANA Academy – Smart Data Integration/Quality : SAP ECC Replication [SPS09]

想获取更多SAP HANA学习资料或有任何疑问,请关注新浪微博@HANAGeek!我们欢迎你的加入!

转载本文章请注明作者和出处http://scn.sap.com/community/chinese/hana/blog/2015/03/01/sdi%E7%9A%84%E9%83%A8%E7%BD%B2%E5%8F%8A%E7%AE%80%E5%8D%95%E4%B…,请勿用于任何商业用途。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: