经过多年的发展,数据库迁移软件SNP Glue 在全球已成为值得信赖且广为人知的解决方案,支持客户将其 SAP 数据与最现代化的平台集成。尤其是将ERP、BW、S/4HANA、ECC数据抽取至任意目标环境中。如数据库、数据湖、大数据平台、数据分析工具、BI解决方案或云解决方案 。SNP Glue 打破了数据孤岛,向数据科学家开放了 SAP,支持基于企业 SAP 数据的多个新用例。
随着时间的推移,市场的竞争促使客户想方设法利用云解决方案的所有优势。这有时需要超越“标准”数据复制场景并使用 SNP Glue 来实施实时架构,其中在 SAP 中创建的数据和事件将可用并与企业中的其他应用程序集成。
在这篇文章中,我们将利用最近发布的新功能,展示 SNP Glue 如何与其经过验证的数据复制功能一起支持本地 SAP 系统和云应用程序之间的完全事件驱动架构,使其成为第一个在SAP中同时提供数据集成和事件驱动集成场景的解决方案。
真正的事件驱动架构
事件驱动架构使用事件来触发解耦服务并在它们之间进行通信,并且在使用微服务构建的现代应用程序中很常见。事件是状态的变化,“发生了什么”,就像一件物品被放入电子商务网站的购物车中。事件可以携带状态(购买的商品、价格和送货地址),也可以是标识符(订单已发货的通知)。
事件驱动的体系结构有三个关键组件:事件生产者、事件路由器和事件消费者。 生产者向路由器发布事件,路由器过滤并将事件推送给消费者。生产者服务和消费者服务是分离的,这允许它们独立地扩展、更新和部署。
下面我们可以看到一个例子,一个事件驱动的体系结构如何服务于一个建筑公司的用例,该用例将他们的产品的事件流传输到客户站点,以便通过移动应用程序通知他们的业务用户。
现在我们已经更清楚地了解了“事件驱动”的含义,让我们看看SNP Glue如何帮助我们将SAP系统包含到这个现代体系结构模式中。
这一次,我们将不再从SAP表中传输数据,而是侦听SAP Business Object框架引发的事件。然后,SNP Glue将特定的消息连同它们的数据有效负载一起发布到消息代理。
这种方法特别适合以下客户:
■ 正在寻求创建一个允许来自不同平台的不同应用程序集成的系统
■ 不想在从SAP复制的表数据之上重新创建数据模型
■ 是否希望实现一种灵活的架构,能够提供实时洞察并独立扩展
■ 对捕获特定的业务事件感兴趣,而不需要记录SAP中数据发生的所有更改
捕获SAP业务对象
我们引入的第一个新特性是将数据复制与业务对象层(又名SAP BO)集成的能力。
在SAP Business Workflow中,业务对象被定义为围绕业务流程(或实体)构建的方法或事件的集合。SAP系统中一些常见的业务对象包括客户、物料、供应商、采购订单等。这使客户和其他方面能够访问可执行方法和事件的接口,与SAP业务流程进行交互。
我们创建了一个“事件驱动流程”。这意味着,这个数据复制过程可以链接到SAP Business Objects事件,而不是手动执行或定期调度,并且它将在SAP系统中每次发生所选类型的事件时都会执行。
下图显示了通过以下步骤将SNP Glue流程绑定到特定的SAP BO事件是多么容易:
■ 定义您想要发送的数据作为消息主体,例如与新创建的销售订单相关的销售订单信息
■ 将此执行链接到特定的业务对象事件
■ 激活流程。这将在后台创建必要的绑定,消息将开始从您的系统中流出
多个目标,实现更大灵活性
企业可以选择许多不同的平台和服务来构建事件驱动的体系结构。最著名的是Apache Kafka、Confluent、Solace、Amazon Kinesis、Microsoft Events Hub或Google Cloud Dataflow。它们可以分为两大类:消息传递(发布者/订阅者)和流媒体服务。选择哪一种很大程度上取决于您的具体需求和偏好。像Gartner这样的网络资源可以提供有价值的见解。
我们提到的大多数服务都提供了一个基于HTTP的接口来接收消息和事件。SNP Glue现在可以利用这些接口并与事件路由器集成,这归功于我们刚刚发布的多用途HTTP连接器,连接器可以很容易地自定义,并且可以支持许多不同的格式和目标。您还可以实现行业标准,如CloudEvents规范:
使用SNP Glue的事件驱动架构
事件驱动的体系结构可以给企业带来许多好处,而将SAP系统集成到企业中可以带来更多好处。SNP Glue现在可以捕获标准SAP工作流生成的事件,并将它们输送到企业事件代理以及数据有效负载。得益于其新功能,SNP Glue现在可以扩展标准数据复制用例,以创建混合或完全实时的事件驱动集成场景。这可以极大地提高公司响应现代企业不断增长的集成、灵活性和速度需求的能力。