SLT (SAP 景观转换复制服务器) 在 SAP HANA 中
什么是 SLT (SAP 景观转换复制)?
SLT 是一个 ETL 工具,它允许您实时或计划性地从 SAP 源系统或非 SAP 系统将数据加载和复制到 SAP HANA 数据库。
SAP SLT 服务器使用基于触发器的复制方法将数据从源系统传递到目标系统。
SLT 服务器可以安装在单独的系统上,也可以安装在 SAP ECC 系统上。
SLT 系统的优势如下:
- 支持实时或计划性数据复制。
- 在实时复制数据时,我们可以将数据迁移为 SAP HANA 格式。
- SLT 处理集群和池表。
- 它支持在加载/复制过程中自动进行非 Unicode 和 Unicode 转换。(Unicode 是一种类似于 ASCII 的字符编码系统。非 Unicode 是一种比 ASCII 覆盖更多字符的编码系统)。
- 它与 SAP HANA Studio 完全集成。
- SLT 具有表设置和转换功能。
- SLT 具有与 SAP HANA Solution Manager 的监控功能。
SAP SLT 服务器与 SAP / 非 SAP 系统的架构概述如下:
SAP SLT 连接架构概述 SAP 系统与 SAP HANA 之间
SAP SLT Replication Server 将所有元数据表定义从 ABAP 源系统转换为 SAP HANA。
对于 SAP 源,SLT 连接具有以下特点:
- 当复制表时,SAP SLT Replication server 会在源系统中创建日志表。
- 在 SAP 源系统中创建读取引擎。
- SAP SLT 与 SAP 源之间的连接建立为 RFC 连接。
- SAP SLT 与 SAP HANA 之间的连接建立为 DB 连接。
具有与用户“SYSTEM”相同授权的数据库用户可以创建 SAP SLT 与 SAP HANA 数据库之间的连接。
SAP SLT Server 会自动为 SAP HANA 数据库创建 DB 连接(当我们通过事务码 LTR 创建新配置时)。无需手动创建。
为 SAP 源系统配置 SAP SLT 服务器
首先,我们需要配置 SAP SLT 复制服务器以连接 SAP 源和 SAP HANA 数据库。事务码 LTR 用于创建 SAP 源和 SAP SLT 之间的连接。
步骤 1) 登录到 SAP SLT 服务器,然后从 SAP SLT 复制服务器调用事务码“LTR”。
将出现一个 Web-dynpro 弹出屏幕以登录到 SAP SLT 服务器。
步骤 2) 在此步骤中,
- 输入配置名称和描述。
- 选择 SAP 系统作为源系统。
- 输入 SAP 系统的 RFC 连接。
- 输入用户名 / 密码 / 主机名和实例号。
- 输入作业选项详细信息:
- 数据传输作业数。
- 计算作业数。
- 选择复制选项为实时。
- 维护完所有设置后,单击“确定”以在 SLT 中创建新模式。
将添加并激活一个配置名称“SLTECC”。
配置 SAP SLT 服务器成功后,SAP SLT Server 会自动为 SAP HANA 数据库创建 DB 连接(当我们通过事务码 LTR 创建新配置时)。无需手动创建。
下一步,我们将数据从 SAP 源导入 SAP HANA。
通过 SLT 将 SAP 源数据导入 SAP HANA
一旦我们成功配置了 SAP SLT 服务器,SAP HANA 数据库中就会创建一个模式,其名称为上面 SAP SLT 中的配置名称。
此模式包含以下对象:
- 1 个模式 – SLTECC。
- 1 个用户 – SLTECC。
- 1 个权限
- 8 个表 –
- DD02L (SAP 表名)
- DD02T (SAP 表文本)
- RS_LOG_FILES
- RS_MESSAGE
- RS_ORDER
- RS_ORDER_TEXT
- RS_SCHEMA_MAP
- RS_STATUS。
- 4 个角色 –
- SLTECC_DATA_PROV
- SLTECC_DATA_POWER_USER
- SLTECC_DATA_USER_ADMIN
- SLTECC_DATA_SELECT
- 2 个存储过程
- RS_GRANT_ACCESS
- RS_REVOKE_ACCESS
所有配置均已完成,现在我们从 SAP ECC (ERP Central Component) 加载一个表。
步骤 1) 要将表从 SAP ECC 加载到 SAP HANA 数据库,请按照以下步骤操作:
- 从快速视图导航到数据供应。
- 选择 SAP HANA 系统。
- 点击完成按钮。
步骤 2) 将显示一个基于 SLT 的表数据供应屏幕。数据供应有 5 个选项,如下所示:
供应选项 | 详情 |
---|---|
加载(完全加载) | 这是一次性事件,它将启动从源系统的初始数据加载。 |
复制(完全加载 + 增量加载) | 它会启动初始加载(如果之前未完成),并考虑增量更改。将为每个表创建数据库触发器和相关日志表。 |
停止复制 | 它会停止表的当前复制过程。它会完全删除数据库触发器和日志表。 |
暂停 | 它会暂停表的正在进行的复制过程。数据库触发器不会从源系统中删除,并且更改的记录将继续。相关信息存储在源系统中的相关日志表中。 |
恢复 | 恢复会重新启动暂停表的复制。恢复后,将恢复暂停的复制过程。 |
我们使用表中的第一个选项“加载选项”将表 (LFBK) 的数据从源加载到 SAP HANA 表。
步骤如下:
- 源和目标系统详细信息根据 SAP SLT 配置进行选择。
- 单击加载按钮并选择需要加载/复制到 SAP Hana 的表 (LFBK)。
- 表 (LFBK) 将被添加到数据加载管理部分,操作为“加载”,状态为“已计划”。
数据加载后,状态将更改为“已执行”。表将在“SLTECC”模式下创建并包含数据。
步骤 3) 如下所示,通过模式“SLTECC”的数据预览检查表 (LFBK) 中的数据:
- 通过 SAP HANA Studio 登录到 SAP HANA 数据库,并选择 SAP HANA 系统 HDB (HANAUSER)。
- 在表节点下选择表 (LFBK)。
- 右键单击表 (LFBK) 并单击“打开数据预览”选项。
- 通过 SLT 进程加载的数据将在数据预览屏幕中显示。
现在我们已成功加载表“LFBK”中的数据。我们将在后续建模中使用此表。
SAP SLT 连接非 SAP 系统与 SAP HANA 之间
SAP SLT Replication Server 将所有元数据表定义从非 ABAP 源系统转换为 SAP HANA。
对于非 SAP 源,SLT 连接具有以下特点:
- 当复制表时,SAP SLT Replication server 会在源系统中创建日志表。
- 读取引擎在 SAP SLT Replication server 中创建。
- SAP SLT 与 SAP 源 / SAP HANA 之间的连接建立为 DB 连接。
SAP SLT 只能进行最简单的转换,因此对于复杂的转换,我们需要另一个 ETL 工具,例如 SAP Data Services。