「小哈导读」之前收到过投稿文章,介绍数据集成服务的明星企业MuleSoft,被Salesforce以65亿美元的价格收购,文中介绍了MuleSoft的发展历程,以及优势分析,如果你还没读过,可以点击下方链接。
MuleSoft的投稿文章发出后,InweHub社群中经常会有人问,SAP体系内是否有类似的玩意?通常企业构建自己的数据枢纽,会使用怎样的模式?怎么做更为合理?今天小哈为您带来一篇翻译文章,讲述使用SAP SDI把Salesforce集成进来需要怎么做?当大象和冰箱都有了,方法和步骤很重要。
SAP做SDI是为了做减法、顺潮流
「正文」SAP没有SDI(Smart Data Integration)之前,如果想做个集成,的确很麻烦,SDI的诞生也就是想解决这个问题。
每种新技术或平台的开发实现,都是为了应对旧技术所面临的挑战,满足客户的需求,通过更容易的流程、或更经济代价来促进变革。智能数据集成SDI也不例外。
几年前,用SAP干这个事情的确麻烦,如果想将数据文件加载到HANA,必须安装Data Services,这是一个ETL工具,用于复制、转换数据并将数据从源文件加载到目标系统。如果想实时同步,还必须另外安装了SLT / SRS,如果不想把数据直接放入目标点,还需要用SDA来整些虚拟表。
所以,如果想做个数据集成,至少得用三个工具,配置麻烦,运行过程中效果也一般,很多数据的动态需求并没有解决。
这个新玩意SDI挺不错的,结合了ETL、实时复制和虚拟表的所有功能。SDI充当了各种源和HANA之间的桥梁,实时同步的问题得到了较大幅度的改善,并且所有的连接线条的配置条件、运转状态都即时可见。
SDI有哪些优点?
001 轻松配置,所有需要做的就是安装SAP SDI Agent,并在其上部署SFDC适配器。SDI适配器托管在S/4 HANA数据配置代理上,充当Salesforce和HANA之间的桥梁,读取源数据并将值转换为HANA数据类型值。
002 使用Source系统进行身份验证,SFDC Adapter for SDI(下面操作部分有链接)支持基本身份验证。您需要做的就是在远程源配置中提供您的凭据(用户名,密码,安全令牌(可选))。
003 会话重用机制,SFDC Adapter for SDI(下面操作部分有链接)支持Salesforce会话重用,以减少对http://Salesforce.com的登录呼叫次数。如果当前会话过期,Salesforce会话重用将自动续订会话。
004 基于数据量动态调整通信方法,适配器提供“Maximum Expected Number of Record”参数,该参数旨在在Salesforce API之间自动切换。当源数据中的实际记录数小于或等于最大预期参数值时,将使用SOAP API。否则,会使用BULK API。
005 QueryLocator结果,在查询大量数据时使用QueryLocator。 QueryLocator记录了查询结果集中当前处理位置的服务器端指针。适配器将重复调用查询,直到处理完结果集中的所有记录。
什么是QueryLocator?
https://developer.salesforce.com/forums/?id=906F00000008wZqIAI
006 虚拟表作为过渡源,由于SQL查询直接在源系统中运行,因此使用SDI适配器可以虚拟访问数据,而无需将数据直接复制到S/4HANA。
007 支持所有来源的实时批量获取,SDI能够近实时数据复制,即使在批处理模式下也可以执行。
008 允许批量和实时数据转换,SDI作为集成和清理数据的能力。SAP HANA SDI提供SAP HANA基于Web的开发工作台,以创建流程图以转换数据。流程图启用基于ETL的批处理和实时数据流。有多种选项可用于满足转换数据,例如过滤,加入,聚合,清理等。
009 变更数据捕获(CDC),每天将整个源数据复制到目标,会给非关键任务带来额外负担,从而影响整个系统的性能。CDC跟踪变更数据并在源和目标之间传输最新变更,从而提高效率和性能。
010 数据质量,使用SDI,您可以放心地获得数据质量和数据可靠性,从而增强您在运营,决策和规划中的预期用途体验。
011 预测分析,除了集成,SDI还可用于根据预测模式、使用机器学习、以及其他算法来定义洞察目标、和查看结果。
012 更好的链接模式,SDI为连接RDBMS和非结构化数据源提供了很大的灵活性。此外,它还支持大数据和其他新系统。
013 支持所有的UI,SAP HANA SDI支持基于Web的开发工作台,允许您在Web浏览器中开发整个应用程序,而无需安装任何开发工具。它提供了直观的UI,便捷的功能,简化了开发。
举个栗子
此例子主要关注SDI如何促进从Salesforce到SAP HANA的数据实时复制。在执行任何查询时或者当Salesforce中的数据发生更改或更新时,可以按需提取数据,它会自动推送到SAP HANA。
Advantco International LLC(Advantco)为SAP HANA智能数据集成(SDI )提供SFDC适配器和Microsoft CRM适配器,其目的是从http://Salesforce.com或Microsoft CRM实时批量加载或复制已更改的数据到SAP HANA表。
下面就是操作步骤
1. 如何在HANA表中从http://Salesforce.com复制帐户数据
用于SDI的SFDC适配器充当桥接器。它打开与Salesforce的连接并读取源数据并将值转换为Hana数据类型值。
https://www.advantco.com/product/adapter/sfdc_sdi
帐户检索用例
目标是通过虚拟表查询远程帐户,使SAP HANA上的Account on Salesforce数据可用(数据不会物理上传到云端,会保留在原始源中。)
创建远程源
保存并单击测试连接:
我们可以看到适配器提供的元数据表,每个表都对应一个sObject。
2.为_SYS_REPO授予权限
执行以下SQL语句:
GRANT CREATE VIRTUAL TABLE, CREATE REMOTE SUBSCRIPTION, DROP ON REMOTE SOURCE “Salesforce” TO _SYS_REPO;
结果如下:
3.创建虚拟表
创建Salesforce远程源后,我们可以创建一个虚拟表来检索帐户的数据,如下所示:
输入虚拟表名称,并选择Schema “ADVANTCO_SFDC”
跳转到“ADVANTCO_SFDC”架构并刷新“Tables”:
4. 查询虚拟表
打开SQL控制台,输入并运行SQL语句,结果如下:
5.帐户复制用例
目的是使用复制任务功能,在SAP HANA中同步Account on Salesforce的数据
5.1 创建复制任务
创建复制任务,如下所示:
输入名称:
选择远程源,和目标schema:
选择 “Account” 远程表,然后选择 “Initial load only”。
5.2 运行复制任务
保存复制任务后,单击运行任务,结果如下:
5.3 查看结果
复制任务完成后,转到 “ADVANTCO_SFDC” ,打开“RT_Account”表的内容,结果如下:
原文作者:Ashish Bahl
原文链接:https://blogs.sap.com/2018/07/29/use-case-to-s4hana-smart-data-integration-sdi/