你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
选择最佳 SAP 连接器
本文是“SAP 扩展和创新数据:最佳做法”一文系列的一部分。
适用于: Azure 数据工厂 Azure Synapse Analytics
本文是 SAP 扩展和创新数据的第 2 部分:最佳做法系列。 有关本系列中的第一篇文章,请参阅 “识别 SAP 数据源”。
SAP 应用程序通常运行多个任务关键型和核心业务流程,从而生成大量有价值的业务数据。 OLTP 中有许多 SAP 应用程序和解决方案,例如 ECC、CRM、SCM 和 OLAP,例如 BW。 SAP 应用程序以多种方式公开数据。 当客户合并 SAP 和非 SAP 数据并应用高级数据服务(如分析和 AI)时,他们提取实时预测见解。 此方法可改善业务成果。 SAP 数据集成可以是一个大型的复杂项目。
将 SAP 数据与 Azure 集成的设计注意事项
Azure 数据工厂和 Azure Synapse Analytics 管道提供了几种将 SAP 数据集成到 Azure 的方法和连接器。 你选择的方法和 SAP 连接器取决于多种因素,例如 SAP 应用程序的类型、数据类型及其公开方式、数据量和预期延迟、要对数据执行的操作以及存储数据的位置。 数据可以存储在 SAP 中或 SAP 外部。
建议考虑以下注意事项,帮助你确定方法并规划高级体系结构。
- 定义每个业务用例以及每个用例的预期结果。 考虑用例可解决的问题或用例实现的业务成果以及操作方法。
- 确定 SAP 数据流和数据分类中涉及的应用程序和系统。
- 定义数据配置文件,包括 SAP 源系统,例如 ECC、S/4HANA、BW/4HANA 或 BWoH。 定义数据的数量和类型,例如原始数据或转换的数据。 定义数据可用的 SAP 对象类型,例如基础数据库、SAP 数据字典表(如 EKKO、AUFK 或逻辑对象,如 CDS 视图、SAP 提取程序或 BW 对象)。
- 为每个方案确定正确的连接器。 Azure 提供了多个连接器来连接到 SAP 系统,并且可能有多个连接器可用于给定的源系统。 但其他因素(如数据卷和 SAP 产品版本)可能会影响此选择。
- 定义数据发生的情况,例如清理、验证、转换或扩充,以及在 SAP 或 Azure 中发生的位置。
- 确定数据的存储位置,例如 Data Lake 或数据仓库,以及数据的可视化方式,例如 Power BI。
- 考虑数据引入的预期延迟和频率,例如低延迟、每 4 小时或每天一次。
- 定义治理、分类、访问、安全性和网络要求。
- 确定单个体系结构模式是否适用于所有用例,或者是否需要根据以前的要求建立多个模式。
- 确定所涉及的 Azure 服务和内部组织,并确定所需的技能和资源,例如 SAP、Azure 数据平台、安全性和网络。
- 考虑运行具有明确目标、范围、方法和成功条件的概念证明。
提示
验证当前和将来的 SAP 组件和版本是否支持该解决方案。
如果可能,请连接到 SAP 消息服务器(登录类型:组),而不是应用程序服务器进行负载均衡。
大多数 Azure 连接器都支持使用安全网络通信(SNC)连接到 SAP 系统。
Azure 数据工厂和 Azure Synapse Analytics 管道提供适用于 SAP 方案的基于模式的方法入门的 SAP 模板。
检查 SAP 数据提取方案是否会影响 SAP 许可。
可以使用 适用于 Azure 的 ABAP SDK 来更紧密地集成 SAP 数据与 Azure。
选择最佳连接器
以下注意事项可帮助你根据数据所在的位置以及采用何种形式开始使用方法。
- 如果数据在 SAP 应用程序中建模,并且以逻辑对象的形式可供使用,则使用连接 NetWeaver AS ABAP 处理逻辑对象的连接器。
- 如果数据未在 SAP 应用程序中建模,但在原始形式的数据字典表或视图中可用,请使用连接 NetWeaver AS ABAP 处理原始数据的连接器。
- 如果数据在 SAP OLAP 或 OLTP 应用程序中可用,请使用适用于相应应用程序的连接器。
- 如果数据在 SAP HANA 数据库中可用,请使用使用 HANA ODBC 驱动程序连接到 HANA 数据库的 SAP HANA 连接器。
- 有一些通用连接器可用于连接到基础 anyDB(非 SAP)数据库,例如 MS SQL、IBM 和 Oracle。
- Azure 为 Azure 逻辑应用、Power Apps 和 Azure Functions 提供 SAP 连接器,用于连接到 SAP 应用程序。 这些集成方案涵盖不同的用例,但可能存在重叠。
提示
如果没有可用于应用程序或方案的连接器,请考虑将数据移动到受支持的应用程序或方案。
下表显示了可用的更广泛选择,具体取决于要从中提取数据的 SAP 应用程序。
数据位置 | 方案:完全加载和手动增量 | 场景:完全加载和更改数据捕获 |
---|---|---|
SAP HANA | SAP HANA | SAP CDC |
SAP BW | SAP 表、 SAP BW OpenHub、 SAP BW 通过 MDX | SAP CDC |
SAP ECC、SAP S/4 HANA | SAP 表、 SAP ECC | SAP CDC |
下表显示了适用于不同 SAP 源、方案和连接器功能Azure 数据工厂和 Azure Synapse Analytics 中提供的所有 SAP 连接器的摘要。
提示
支持的连接器和功能通常取决于 SAP 产品实例,例如 HANA 上的 BW 与 BW/4HANA 及其版本。 有关详细信息,请参阅每个连接器的生产文档。
有关 SAP 数据集成方案的总体支持的信息,请参阅 SAP 数据集成。
SAP 源应用程序 | 数据类型 | Azure 连接器 | 支持的对象和模式 | 协议和连接 | 身份验证 | 详细信息 | 并行化和性能 | 数据量 |
---|---|---|---|---|---|---|---|---|
基于 NetWeaver AS ABAP 的 SAP 应用程序,例如 SAP ECC、S/4HANA、CRM、SRM、HANA 上的 BW 和 BW/4HANA | 原始数据 | 通过 SLT 的 SAP CDC | 所有透明、共用和群集表都支持完全加载和 CDC。 某些视图(事务 SE11)支持完全加载和 CDC。 | RFC 调用 NetWeaver 应用程序和消息服务器。 | 基本 SNC | 先决条件 | 是的,使用基于可配置分区的内置并行加载快速。 | 大型 |
基于 NetWeaver AS ABAP 的 SAP 应用程序,例如 SAP ECC、S/4HANA、CRM、SRM、HANA 上的 BW 和 BW/4HANA | 逻辑对象 | SAP CDC | ABAP CDS 视图支持完全加载,其中许多视图支持增量,例如,如果它们基于时间戳或触发器。 SAP 提取程序(标准和自定义)支持完全加载,并且可能还支持基于配置的增量。 BW InfoProviders,如 DSO、ADSO、InfoCubes、MultiProvider、CompositeProvider 和 Query(如果公开为 InfoProvider)支持完全加载,还可能支持基于配置增量。 | RFC 调用 NetWeaver 应用程序和消息服务器。 | 基本、SNC | 先决条件 | 是的,使用基于可配置分区的内置并行加载快速。 | 大型 |
基于 NetWeaver AS ABAP 的 SAP 应用程序,例如 SAP ECC、S/4 HANA、AnyDB 上的 BW 和 HANA 上的 BW。 不支持 BW/4HANA。 | 原始数据 | SAP 表 | 所有透明、共用表和群集表和视图(事务 SE11)都支持完全加载。 还可以使用时间戳或唯一 ID 列通过手动水印提取更改。 | RFC 调用 NetWeaver 应用程序和消息服务器。 | 基本、SNC | 先决条件 | 是的,使用基于可配置分区的内置并行加载快速。 | 大型 |
AnyDB 上的 BW 和 HANA 上的 BW。 不支持 BW/4HANA。 | 逻辑对象 | SAP BW Open Hub | 通过 Open Hub 目标(OHD)本地表公开的 BW 对象,例如 DataSources、DSO、InfoCube、MultiProvider、CompositeProvider 和 Query(如果公开为 InfoProvider)支持完全加载。 如果 OHD 支持增量,则支持增量。 | RFC 调用 NetWeaver 应用程序和消息服务器。 | 基本 | 先决条件。 在 SAP BW 中创建 SAP OHD 以公开数据。 | 是的,使用基于 OHD 特定架构的内置并行加载快速。 | 大型 |
AnyDB 上的 BW 和 HANA 上的 BW。 不支持 BW/4HANA。 | 逻辑对象 | 通过 MDX 的 SAP BW | BW InfoCubes 和 QueryCubes(包括 BEx 查询)支持完全加载。 不支持 Delta。 | RFC 调用 NetWeaver 应用程序服务器。 | 基本 | 先决条件 | 较慢 | 小型 |
SAP ECC、S/4 HANA | 原始数据或逻辑对象 | 通过 SAP 网关的 SAP ECC | OData 服务公开的任何对象,例如 SAP 表、视图、BAPI 对象、提取程序、数据或 IDOC,这些对象可以通过相对适配器接收为 OData,支持完全加载。 还可以使用时间戳或唯一 ID 列通过手动水印提取更改。 | HTTP (OData) 调用 NetWeaver 应用程序和消息服务器。 | 基本 | 先决条件。 设置 SAP 网关、激活 OData 服务并公开实体。 | 较慢 | 小型 |
SAP HANA | 原始数据或逻辑对象 | SAP HANA | HANA 数据库行和列表、信息模型(分析和计算视图)和自定义查询支持完全加载。 还可以使用时间戳或唯一 ID 列通过手动水印提取更改。 | 对 HANA 数据库的 ODBC 调用。 | 基本、Windows (SSO) | 先决条件 | 是的,使用基于可配置分区的内置并行加载快速。 | 大型 |
SAP Cloud for Customer (SaaS CRM) | 原始数据或逻辑对象 | SAP C4C | 此连接器是双向的。 它可以将数据复制到 SAP C4C 和从 SAP C4C 复制数据。 | 支持由 SAP C4C 中的 OData 服务公开的对象。 | 对 SaaS 服务的 HTTP (OData) 调用。 | 基本 | 较慢 | 小型 |
一个方案可能有多个连接器可用。 你的选择取决于哪个连接器为你提供了最佳集成功能。 请考虑使用与更高层集成的连接器,例如 SAP 应用程序而不是数据库。 下图显示了建议的决定方向。
SAP ECC、S/4 HANA、SAP 应用程序集成 - 从 SAP ECC、S/4 HANA 或其他 SAP 应用程序中提取数据。
SAP BW 集成 - 从 SAP BW 和 B/4 HANA 中提取数据。