你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

SAP CDC 功能的概述和体系结构

适用于: Azure 数据工厂 Azure Synapse Analytics

提示

试用 Microsoft Fabric 中的数据工厂,这是一种适用于企业的一站式分析解决方案。 Microsoft Fabric 涵盖从数据移动到数据科学、实时分析、商业智能和报告的所有内容。 了解如何免费开始新的试用

了解 Azure 数据工厂中的 SAP 变更数据捕获 (CDC) 功能,并了解体系结构。

Azure 数据工厂是 ETL 和 ELT 数据集成平台即服务 (PaaS)。 对于 SAP 数据集成,数据工厂目前提供 6 个正式版连接器:

Screenshot of the six general availability connectors for SAP systems in Data Factory.

数据提取需求

数据工厂中的 SAP 连接器仅批量提取 SAP 源数据。 每个批次处理现有数据和新数据的方式相同。 在批处理模式下的数据提取中,不会识别现有数据集和新数据集之间的更改。 如果拥有大型数据集(例如具有数百万或数十亿条经常更改的记录的表),这种类型的提取模式不是最佳的。

可以通过频繁提取完整数据集来保持 SAP 数据副本全新且最新,但这种方法成本高昂且效率低下。 还可使用有限的手动解决方法来提取大部分新的或更新的记录。 在名为“水印”的过程中,提取需要使用时间戳列、单调增加的值,并持续跟踪自上次提取以来的最高值。 但是,某些表没有可用于水印的列。 此过程也不会将已删除的记录标识为数据集中的更改。

SAP CDC 功能

Microsoft 客户表示,他们需要一个只能提取两组数据集之间的增量的连接器。 在数据中,增量是数据集中的任何更改,这些更改是由数据集中的更新、插入或删除操作导致的。 增量提取连接器使用大多数 SAP 系统中存在的SAP 变更数据捕获 (CDC) 功能来确定数据集中的增量。 数据工厂中的 SAP CDC 功能使用 SAP 操作数据预配 (ODP) 框架来复制 SAP 源数据集中的增量。

本文提供 Azure 数据工厂中 SAP CDC 功能的大致体系结构。 获取有关 SAP CDC 功能的详细信息:

如何使用 SAP CDC 功能

SAP CDC 连接器是 SAP CDC 功能的核心。 它可连接到支持 ODP 的所有 SAP 系统,其中包括 SAP ECC、SAP S/4HANA、SAP BW 和 SAP BW/4HANA。 该解决方案可以直接在应用程序层工作,也可以通过 SAP 横向转换复制服务器 (SLT) 作为代理间接工作。 它不依赖水印来完全或增量提取 SAP 数据。 SAP CDC 连接器提取的数据不仅包括物理表,还包括使用这些表创建的逻辑对象。 基于表的对象的一个示例是 SAP 高级业务应用程序编程 (ABAP) 核心数据服务 (CDS) 视图。

将 SAP CDC 连接器与数据工厂功能(例如映射数据流活动和翻转窗口触发器)结合使用,在自我管理的管道中实现低延迟 SAP CDC 复制解决方案。

SAP CDC 体系结构

Azure 数据工厂中的 SAP CDC 解决方案是 SAP 和 Azure 之间的连接器。 SAP 端包括 SAP ODP 连接器,它通过标准远程函数调用 (RFC) 模块调用 ODP API 来提取完整和增量原始 SAP 数据。

Azure 端包括映射数据流,它可转换 SAP 数据并将其加载到映射数据流支持的任何数据接收器中。 其中一些选项是存储目标(例如 Azure Data Lake Storage Gen2)或数据库(例如 Azure SQL 数据库或 Azure Synapse Analytics)。 映射数据流活动还可以增量格式在 Data Lake Storage Gen2 中加载结果。 可使用 Delta Lake 按时间顺序查看功能来生成特定时间段的 SAP 数据的快照。 可使用数据工厂翻转窗口触发器频繁运行管道和映射数据流,以低延迟且不使用水印的方式在 Azure 中复制 SAP 数据。

Diagram of the architecture of the SAP CDC solution.

若要开始,请创建 SAP CDC 链接服务、SAP CDC 源数据集和包含映射数据流活动的管道(在该管道中使用 SAP CDC 源数据集)。 若要从 SAP 中提取数据,需要在本地计算机上,或者在能看到 SAP 源系统或 SLT 服务器的虚拟机 (VM) 上安装自承载集成运行时。 映射数据流活动在无服务器 Azure Databricks 或 Apache Spark 群集上运行,或者在 Azure 集成运行时上运行。 需要在映射数据流活动中配置临时存储,使自承载集成运行时与映射数据流集成运行时无缝工作。

SAP CDC 连接器使用 SAP ODP 框架来提取各种数据源类型,包括:

  • SAP 提取器,最初设计用于从 SAP ECC 提取数据并将其加载到 SAP BW
  • ABAP CDS 视图,这是 SAP S/4HANA 的新数据提取标准
  • SAP BW 和 SAP BW/4HANA 中的 InfoProviders 和 InfoObjects 数据集
  • SAP 应用程序表(使用 SAP LT 复制服务器 [SLT] 作为代理时)

在此过程中,SAP 数据源是提供程序。 提供程序在 SAP 系统上运行,以在操作增量队列 (ODQ) 中生成完整数据或增量数据。 映射数据流源是 ODQ 的订阅者。

Diagram of the architecture of the SAP ODP framework through a self-hosted integration runtime.

由于 ODP 将提供程序与订阅者完全分离,因此任何提供提供程序配置的 SAP 文档都适用于作为订阅者的数据工厂。 有关 ODP 的详细信息,请参阅操作数据预配简介

SAP CDC 解决方案的先决条件和设置