在以SAP系统作为主要ERP的企业中,不同系统之间的数据库数据同步是个重要的工作。对于这种需求,除了开发ABAP接口之外,也有高效的工具可用。SLT就是其中之一。

SLT是SAP的第一个ETL(Extract-Transform-Load)工具,它允许实时加载和复制数据,或者将数据从源系统和非源系统调度到SAP HANA数据库。

SAP SLT服务器使用基于触发器的复制方式以实现从源系统到目标系统的数据传递。

SLT服务器可以安装在单独的系统或SAP ECC系统上。

SLT系统的好处如下:

  • 允许实时或按计划时间进行数据复制。
  • 在实时复制数据的过程中,可以以SAP HANA格式迁移数据。
  • SLT可以处理簇表和池表
  • 在加载/复制期间支持非Unicode和Unicode的自动转换。
  • 与SAP HANA Studio有着完全的集成。
  • SLT有表设置和转换能力。
  • 可以通过SAP HANA Solution Manager监控。

SLT的全称是 SAP Landscape Transformation

本文链接:http://www.cnblogs.com/hhelibeb/p/8258915.html

SAP/非SAP系统的SAP SLT服务器的架构概述如下:

SAP系统和SAP HANA之间的SLT连接架构

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连接SAP系统和SAP HANA数据库

在SAP源系统中配置SLT服务器

首先,我们需要配置SAP SLT Replication Server以连接SAP源服务器和SAP HANA数据库。 事务代码LTR用于在SAP源服务器和SAP SLT之间创建连接。

步骤1)登录到SAP SLT服务器,并从SAP SLT复制服务器调用事务“LTR”。

系统会弹出一个Web Dynpro窗口,用于登陆到SAP SLT服务器。

输入用户名密码并登录。

会出现一个如下的弹出窗,用于配置:

点击“New”按钮,创建一个新的配置。

步骤2)在本步骤:

  1. 输入配置名和描述。
  2. 选择SAP系统作为源系统。
  3. 输入SAP系统的RFC连接(destination)。
  4. 输入用户名/密码/主机名和实例编号。
  5. 输入作业选项细节。
    • 数据传输任务编号
    • 计算任务编号
  6. 选择复制选项为实时。
  7. 一旦所有选项维护完毕,点击‘OK’来创建一个SLT的新SCHEMA。

现在已经添加并激活了名为“SLTECC”的新配置:

成功配置SAP SLT服务器后,SAP SLT服务器会自动为SAP HANA数据库创建数据库连接(当通过事务LTR创建新的配置时)。不需要手动创建它。

下一步,我们将数据从SAP源导入SAP HANA。

通过SLT将数据从SAP源导入至SAP HANA

一旦我们成功配置了SAP SLT服务器,SAP HANA数据库就会创建一个和SAP SLT中的配置同名的SCHEMA。

该SCHEMA包含以下对象:

  • 1 Schema - SLTECC.
  • 1 User – SLTECC.
  • 1 Privileges
  • 8 Tables
    • DD02L (SAP Tables Name )
    • DD02T (SAP Table Texts)
    • RS_LOG_FILES
    • RS_MESSAGE
    • RS_ORDER
    • RS_ORDER_TEXT
    • RS_SCHEMA_MAP
    • RS_STATUS.
  • 4 Role -
    • SLTECC_DATA_PROV
    • SLTECC_DATA_POWER_USER
    • SLTECC_DATA_USER_ADMIN
    • SLTECC_DATA_SELECT
  • 2 Procedures
    • RS_GRANT_ACCESS
    • RS_REVOKE_ACCESS

所有配置完成后,现在我们从SAP ECC(ERP中央组件)中加载一个表。

步骤1)要将表从SAP ECC加载到SAP HANA数据库,请按照以下步骤:

  1. 从Quick View前往Data provisioning。
  2. 选择SAP HANA系统
  3. 点击完成按钮

程序会显示一个基于SLT的Table Data Provisioning屏幕。有5个用于data provisioning的选项:

Provision 选项 描述
Load (Full Load) 这是一个一次性时间,会开启从源系统的初始数据加载。
Replicate (Full Load + Delta Load) 会开启一个初始加载(如果之前没进行过的话),并且也会传输增量数据。会为每个表创建数据库触发器和日志表。
Stop Replication 为当前表停止复制过程。完全地移除触发器和日志表。
Suspend 暂停正在进行的表复制过程。数据库触发器不会从源系统移除,日志也将继续记录。相关信息会存储在源系统的日志表里。
Resume 重启暂停的表复制。

我们使用“加载选项”列表中的第一个选项来对表(LFBK)数据进行初始加载,将其从源系统加载到SAP HANA数据库。

操作步骤如下:

  1. 根据SAP SLT配置选择源和目标系统详细信息。
  2. 点击加载按钮,然后选择我们需要在SAP HANA中加载/复制的表(LFBK)。
  3. 表(LFBK)将被添加到数据加载管理部分,它的Action是"Load",状态为"Scheduled"。

数据加载后,状态将变为“已执行”。 该表和数据将在“SLTECC” schema中创建。 

步骤3)通过schema “SLTECC”中的Data Preview检查表(LFBK)中的数据:

  1. 使用SAP HANA Studio登录SAP HANA数据库,并且选择SAP HANA系统HDB(HANAUSER)。
  2. 在表节点下选择表(LFBK)。
  3. 右键点击表(LFBK)选择打开Open data preview。
  4. 在Data Preview屏幕中将显示通过SLT处理加载的数据。

现在我们已经成功的将数据加载到表“LFBK”中。 我们可以在未来的建模中使用这个表。

非SAP系统和SAP HANA间的SLT连接

SAP SLT Replication Server将所有元数据表定义从非ABAP源系统转换为SAP HANA的元数据表定义。

对于非SAP的源,SLT连接具有以下功能:

  • 在复制表时,SAP SLT复制服务器将在源系统中创建日志表。
  • 读取引擎在SAP SLT复制服务器中创建。
  • SAP SLT和源系统/SAP HANA之间的连接基于数据库连接。

图  SAP SLT连接非SAP系统和SAP HANA数据库

SAP SLT只能进行最简单的转换,对于复杂的转换,我们需要其它的ETL工具,如SAP Data Services(SAP DS)。

英文原文:SLT (SAP Landscape Transformation Replication Server) in SAP HANA

参考阅读:Introduction To SAP Landscape Transformation (SLT)

     SAP DS (Data Services) in HANA

SAP HANA中的SLT简介的更多相关文章

  1. SAP HANA 中的决策表(Decision Table)

    http://scn.sap.com/community/developer-center/hana/blog/2013/01/11/what-can-you-do-with-decision-tab ...

  2. SAP HANA中创建计算视图(Calculation View)

    [Step By Step]SAP HANA中创建计算视图(Calculation View) Demo Instruction: 该视图将两个表AUDIOBOOKS和BOOKS中的数据进行连接,并作 ...

  3. 【HANA系列】SAP HANA中null变成问号的问题

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA中null变成问 ...

  4. SAP HANA中创建层次分析视图(Hierarchy Analytic View)

    1. 创建层次Attribute View: ATTR_PRODUCT_HIERACHY ref:  http://www.cnblogs.com/omygod/archive/2013/04/30/ ...

  5. SAP HANA中创建分析权限(Analytic Privilege)

    Demo Instruction: 假定CustomerID > 100的为VIP客户,我们的权限设置为只显示VIP客户 所使用的Attribute View: ATTR_CUSTOMER_FU ...

  6. 【HANA系列】SAP HANA计算视图中的RANK使用方法

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA计算视图中的RA ...

  7. SAP HANA procudure 创建用户

    SAP HANA中的用户是没有功能进行直接的拷贝的,但是我们可以通过建立存储过程调用,通过sql语句的方式进行拷贝: 存储过程定义如下,各位可根据自己的需求进行修改: CREATE PROCEDURE ...

  8. SAP HANA studio 创建分析视图

    [Step By Step]SAP HANA中创建分析视图(Analytic View) 1. 在Modeler视图中点击新建Analytic View 2. 设置分析视图的属性 Name: 分析视图 ...

  9. 【公众号系列】SAP HANA和区块链

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[公众号系列]SAP HANA和区块链   写在 ...

随机推荐

  1. 【Android使用Shape绘制虚线,在4.0以上的手机显示实线】解决方式

    问题描写叙述: 用下面代码绘制虚线: <span style="font-family:Comic Sans MS;font-size:18px;"><? xml ...

  2. JQuery插件开发标准写法

    ;//step01 定义JQuery的作用域 (function ($) { //step03-a 插件的默认值属性 var defaults = { prevId: 'prevBtn', prevT ...

  3. 一.windows环境下rabbitMQ的的安装和配置

    rabbitMQ是AMQP 0-9-1(高级消息队列协议)的一个实现,使用Erlang语言编写,利用了Erlang的分布式特性.用它来实现分布式消息队列. 1.因为是用Erlang编写的,所以首先要安 ...

  4. mysql优化专题」90%程序员都会忽略的增删改优化(2)

    补充知识点:操作数据语句优化的认识 通常情况下,当访问某张表的时候,读取者首先必须获取该表的锁,如果有写入操作到达,那么写入者一直等待读取者完成操作(查询开始之后就不能中断,因此允许读取者完成操作). ...

  5. 【java设计模式】【创建模式Creational Pattern】简单工厂模式Simple Factory Pattern(静态工厂方法模式Static Factory Method Pattern)

    public class Test { public static void main(String[] args){ try{ Factory.factory("A").doSt ...

  6. KVM_虚拟化技术

    1 什么是 KVM KVM 是指基于 Linux 内核的虚拟机(Kernel-based Virtual Machine). 2006 年 10 月,由以色列的 Qumranet 组织开发的一种新的“ ...

  7. [array] leetcode-55. Jump Game - Medium

    leetcode-55. Jump Game - Medium descrition Given an array of non-negative integers, you are initiall ...

  8. Slf4j与其他日志系统兼容的使用

    java生产的各种框架(如spring等)里各个框架会使用不同的日志体系,多个不同日志在一个jvm里混搭会出现一定问题 ,这里梳理一下java体系里常见的日志框架,以SFL4j为中心介绍下跟各个日志框 ...

  9. Android Weekly Notes Issue #288

    Android Weekly Issue #288 December 17th, 2017 Android Weekly Issue #288 本期内容主要包括介绍Kotlin DSL使用kotlin ...

  10. 命令行执行php脚本 中$argv和$argc

    在实际工作中有可能会碰到需要在nginx命令行执行php脚本的时候,当然你可以去配置一个conf用外网访问. 在nginx命令行中 使用 php index.php 就可以执行这个index.php脚 ...