SAP HANA Direct Extractor Connection (DXC) 教程
什么是 SAP HANA DXC?
SAP HANA DXC 是一种批处理数据复制技术,即它可以按时间间隔执行。
SAP HANA DXC 通过 HTTPS 连接使用 SAP Business Suite 应用程序现有的 ETL(提取、转换、加载)方法。
在 SAP Business suite 应用程序中,内容数据源提取器已可用于 SAP Business Warehouse 的数据建模和数据采集。
SAP DXC 利用这些数据源提取器将数据直接交付给 SAP HANA。
SAP DXC 的优势
- SAP DXC 在系统环境中无需额外的服务器或应用程序。
- 它减少了 SAP HANA 中数据建模的复杂性,因为它在源系统中应用了所有业务提取器逻辑后将数据发送到 SAP HANA。
- 它加快了 SAP HANA 的实施时间线。
- 它从 SAP Business site 提取语义丰富的数据并提供给 SAP HANA。
SAP DXC 的限制
- 数据源必须具有预定义的 ETL 方法,如果没有,则需要定义它们。
- SAP DXC 需要 Net Weaver 7.0 或更高版本(例如 ECC)的 Business Suite 系统,其 SP 级别等于或低于:Release 700 SAPKW70021(SP stack 19,来自 2008 年 11 月)。
- 数据源中必须存在具有已定义键字段的过程。
配置 SAP DXC 数据复制
步骤 1) 启用 XS Engine 和 ICM 服务
- 启用 XS Engine
转到 SAP HANA Studio -> 选择系统 -> 配置 -> xsengine.ini。
在 Default 字段中将 instance 值设置为 1。
- 启用 ICM Web Dispatcher 服务 – 它会在 HANA 系统中启用 ICM Web Dispatcher 服务。Web dispatcher 使用 ICM 方法在 HANA 系统中读取和加载数据。转到 SAP HANA Studio -> 选择系统 -> 配置 -> webdispatcher.ini
在 default 列中将 instance 值设置为 1。
步骤 2) 设置 SAP HANA 直接提取器连接
- 在 SAP HANA 中设置 DXC 连接 – 要创建 DXC 连接,我们需要像下面这样在 SAP HANA 中导入交付单元:
- 导入交付单元。
您需要从 SAP 下载 DXC 交付单元到 SAP HANA 数据库。您可以
在以下位置导入单元
“/usr/sap/HDB/SYS/global/hdb/content”。
使用 SAP HANA Content Node 中的 Import Dialog 导入交付单元?配置 XS
应用程序服务器以利用 DXC?将应用程序容器值更改为 libxsdxc。
- 配置 XS 应用程序服务器以利用 DXC。
将应用程序容器值修改为 libxsdxc(如果存在任何值,则进行追加)。
测试 DXC 连接。
- 验证 DXC 是否正常工作。
我们可以通过 Internet Explorer 中的以下路径检查 DXC 连接 –
http://<hostname>:80<instance Number>/sap/hana/dxc/dxc.xscfunc
– 输入用户名和密码进行连接。
- 用户和 Schema 需要在 HANA Studio 中定义
- SAP BW to HANA 的 HTTP 连接需要通过 SM59 定义,
因此,使用 T-code SM59 在 SAP BW 中创建 HTTP 连接。输入参数将是
— RFC Connection 等同于 RFC 连接的名称
— Target Host 等同于 HANA 主机名
— Service Number 等同于 80 <Instance Number >
Log on Security Tab 维护在 HANA Studio 中创建的 DXC 用户,该用户具有基本身份验证方法。
- BW 中的数据源需要配置才能将结构复制到 HANA 定义的 schema。
我们需要使用程序 SAP_RSADMIN_MAINTAIN 在 BW 中设置以下参数
(T-code SE38 或 SA38)
程序中的参数列表 – 参数列表包含值,该值将传递给调用屏幕。
PSA_TO_HDB: 这三个对象值如下所示 –
- GLOBAL – 用于将所有数据源复制到 HANA
- SYSTEM – 它指定了要使用 DXC 的客户端
- DATASOURCE – 它指定了数据源,并且只能使用指定的数据源。PSA_TO_HDB_DATASOURCETABLE:在此,我们需要提供包含用于 DXC 的数据源列表的表名。
- 在 VALUE 字段中,输入您创建的表的名称。
PSA_TO_HDB_DESTINATION: 在此,我们需要移动传入的数据(在此,我们需要提供在 SM59 中创建的值)(这里是 XC_HANA_CONNECTION_HANAS)
PSA_TO_HDB_SCHEMA: 它指定了复制数据需要分配到哪个 schema。
数据源复制
使用 RSA5 在 ECC 中安装数据源。我们使用了数据源 0FI_AA_20
(FI-AA: 交易和折旧)。首先,我们需要使用指定的应用程序组件复制元数据(数据源版本需要 7.0 版本。如果我们有 3.5 版本的数据源,则需要先迁移它。在 SAP BW 中激活数据源)。
一旦数据源在 SAP BW 中加载并激活,它将在定义的 schema 中创建以下表:
- /BIC/A<data source>00 – IMDSO 活动表
- /BIC/A<data source>40 – IMDSO 激活队列
- /BIC/A<data source>70 – 记录模式处理表
- /BIC/A<data source>80 – 请求和数据包 ID 信息表
- /BIC/A<data source>A0 – 请求时间戳表
- RSODSO_IMOLOG – IMDSO 相关表。存储与 DXC 相关的所有数据源的信息。
现在,一旦数据被激活,它就会成功加载到表 /BIC/A0FI_AA_2000 中。我们可以在 SAP HANA Studio 中预览表 /BIC/A0FI_AA_2000 中的数据。