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

管理 SAP CDC 过程

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

提示

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

使用 SAP CDC 连接器在 Azure 数据工厂中创建管道和映射数据流后,必须相应地管理 ETL 过程。

定期运行 SAP 数据复制管道

若要以指定的频率定期运行 SAP 数据复制管道,请执行以下步骤:

  1. 创建用于经常运行 SAP 数据复制管道的翻转窗口触发器。 将“最大并发”设置为“1”。

    有关详细信息,请参阅创建在翻转窗口运行管道的触发器

  2. 在翻转窗口触发器上添加自依赖项,以便后续管道运行始终等待前面的管道运行成功完成。

    有关详细信息,请参阅创建翻转窗口触发器依赖项

    Screenshot of the Edit trigger window with values highlighted to configure the tumbling window trigger.

监视 SAP CDC 数据流

若要监视正在运行的 SAP CDC 数据流的状态和进度,请打开“监视工具”并选择管道运行。 在屏幕底部的活动表中选择“数据流详细信息”图标。

Screenshot of the pipeline monitor.

这会转到数据流监视器。 单击顶部数据流关系图中的源图标将打开底部的详细信息源诊断部分。

“SAP 到暂存订阅者进程”(未针对完整负载显示)有助于在 SAP 源系统的监视工具中识别 SAP CDC 进程。

当 SAP 源系统提取仍在执行时,“SAP 到暂存”部分会定期更新,显示提取过程的进度。

Screenshot of the data flow monitor.

当数据流运行成功完成后,数据流监视器会显示有关从 SAP 进行的提取过程的详细信息。 除了开始时间和持续时间等运行时信息外,还可以在“复制的行数”行中找到从 SAP 复制的行数,并在“计算的行数”行中找到从源传递到下一个转换(在本例中为接收器转换)的行数。 请注意,“计算的行数”可能小于“复制的行数”:从 SAP 系统中提取更改的数据记录后,数据流会根据键定义对更改的行执行重复数据删除操作。 在数据流中只会进一步传递最新的记录。

Screenshot of a successful data flow run in data flow monitor.

监视 SAP 系统上的数据提取

若要监视 SAP 系统上的数据提取,请执行以下操作:

  1. 在 SAP 源系统上的 SAP Logon 工具中,运行 ODQMON 事务代码。

    Screenshot of the SAP Logon Tool.

  2. 在“订阅服务器”中,输入 SAP CDC 链接服务的“订阅服务器名称”属性值。 在“请求选择”下拉列表中,选择“全部”以显示使用链接服务的所有数据提取。

    Screenshot of the SAP ODQMON tool with all data extractions for a specific subscriber.

    可以在操作增量队列 (ODQ) 中查看所有已注册的订阅服务器进程。 订阅服务器进程表示使用 SAP CDC 链接服务的 Azure 数据工厂映射数据流中的数据提取。 对于每个 ODQ 订阅,可以查看详细信息以了解所有完整和增量提取。 对于每个提取,可以查看已使用的各个数据包。

  3. 不再需要提取 SAP 数据的数据工厂映射数据流时,应删除其 ODQ 订阅。 当你删除 ODQ 订阅时,SAP 系统可能会停止跟踪其订阅状态并从 ODQ 中移除未使用的数据包。 若要删除 ODQ 订阅,请选择该订阅,然后选择“删除”图标。

    Screenshot of the SAP ODQMON tool with the delete button highlighted for a specific queue subscription.

对增量更改进行故障排除

数据工厂中的 SAP CDC 连接器从 SAP ODP 框架读取增量更改。 增量记录在 ODQ 表中。

如果可以进行数据移动(映射数据流可以完成且不出错),但无法正确传送数据(无法传送任何数据,或只是传送一部分预期的数据),则首先应在 ODQMON 中调查 SAP 端提供的记录数是否与数据工厂传输的行数匹配。 如果匹配,则问题与数据工厂无关,原因可能是 SAP 端的配置错误或缺失。

使用 ODQMON 在 SAP 中进行故障排除

若要分析 SAP 系统为方案提供了哪些数据,请在 SAP 后端系统中启动事务 ODQMON。 如果将 SAP 横向转换复制服务器 (SLT) 与独立服务器结合使用,请在其中启动事务。

若要查找与映射数据流对应的 ODQ,请使用筛选器选项。 在“队列”中,可以使用通配符缩小搜索范围。 例如,可以按表名称 EKKO 进行搜索。

选中“计算数据量”复选框以查看有关 ODQ 中包含的行数和数据量(以字节为单位)的详细信息。

Screenshot of the SAP ODQMON tool, with delta queues shown.

若要查看 ODQ 订阅,请双击该队列。 ODQ 可包含多个订阅服务器,因此请检查在数据工厂链接服务中输入的订阅服务器名称。 选择时间戳与映射数据流运行时间最接近的订阅。 对于增量订阅,会在 SAP 端记录订阅的映射数据流的首次运行。

Screenshot of the SAP ODQMON tool, with delta queue subscriptions shown.

在订阅中,请求列表对应于数据工厂中的映射数据流运行。 在下图中,可以看到四个映射数据流运行的结果:

Screenshot of the SAP ODQMON tool with delta queue requests shown.

根据第一行中的时间戳,查找与要分析的映射数据流运行对应的行。 如果显示的行数等于映射数据流读取的行数,则可以确认数据工厂已读取并传输 SAP 系统提供的数据。 在此方案中,建议你咨询负责 SAP 系统的团队。

详细了解 SAP 连接器