選擇最佳的 SAP 連接器
本文是「SAP 擴充和創新數據:最佳做法」文章系列的一部分。
適用於: Azure Data Factory Azure Synapse Analytics
本文是 SAP 擴充和創新數據的第 2 部分:最佳做法系列。 如需系列中的第一篇文章,請參閱 識別 SAP 數據源。
SAP 應用程式通常會執行數個任務關鍵和核心商務程式,以產生大量有價值的商務數據。 OLTP 有許多SAP應用程式和解決方案,例如ECC、CRM、SCM和 OLAP,例如 BW。 SAP 應用程式會以數種方式公開數據。 當客戶結合 SAP 和非 SAP 數據並套用進階數據服務時,例如分析和 AI,他們會擷取實時預測性見解。 此方法可改善業務成果。 SAP 數據整合可以是大型複雜專案。
整合 SAP 數據與 Azure 的設計考慮
Azure Data Factory 和 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 中。
- 決定數據的儲存位置,例如數據湖或數據倉儲,以及其可視化方式,例如 Power BI。
- 請考慮數據擷取的預期延遲和頻率,例如低延遲、每 4 小時或每天一次。
- 定義治理、分類、存取、安全性和網路需求。
- 判斷單一架構模式是否提供所有使用案例,或您是否需要根據先前的需求建立多個模式。
- 識別相關的 Azure 服務和內部組織,並識別所需的技能和資源,例如 SAP、Azure 數據平臺、安全性和網路功能。
- 請考慮使用定義完善的目標、範圍、方法和成功準則來執行概念證明。
提示
驗證目前和未來的 SAP 元件和版本是否支持解決方案。
可能的話,請連線到 SAP 訊息伺服器(登入類型:群組),而不是應用程式伺服器來進行負載平衡。
大部分的 Azure 連接器都支援使用安全網路通訊 (SNC) 連線到 SAP 系統。
Azure Data Factory 和 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 Logic Apps、Power Apps 和 Azure Functions 提供 SAP 連接器,以連線到 SAP 應用程式。 這些整合案例涵蓋不同的使用案例,但有可能有重疊。
提示
如果您的應用程式或案例沒有可用的連接器,請考慮將數據移至支援的應用程式或案例。
下表顯示可用的更廣泛選擇,視您想要從哪個 SAP 應用程式擷取數據而定。
數據位置 | 案例:完整載入和手動差異 | 案例:完整載入和異動數據擷取 |
---|---|---|
SAP HANA | SAP HANA | SAP CDC |
SAP BW | SAP 資料表、 SAP BW OpenHub、 透過 MDX 的 SAP BW | SAP CDC |
SAP ECC、SAP S/4 HANA | SAP 數據表、 SAP ECC | SAP CDC |
下表顯示適用於不同 SAP 來源、案例和連接器功能之 Azure Data Factory 和 Azure Synapse Analytics 中所有可用的 SAP 連接器摘要。
提示
支援的連接器和功能通常取決於 SAP 產品實例,例如 BW on HANA 與 BW/4HANA 及其版本。 如需詳細資訊,請參閱每個連接器的生產檔。
如需 SAP 數據整合案例整體支援的相關信息,請參閱 SAP 數據整合。
SAP 來源應用程式 | 資料類型 | Azure 連接器 | 支援的物件和模式 | 通訊協議和連線 | 驗證 | 其他相關資訊 | 平行處理和效能 | 資料量 |
---|---|---|---|---|---|---|---|---|
以 NetWeaver AS ABAP 為基礎的 SAP 應用程式,例如 SAP ECC、S/4HANA、CRM、SRM、HANA 上的 BW 和 BW/4HANA | 未經處理資料 | 透過 SLT 的 SAP CDC | 所有透明、集區和叢集數據表都支援完整載入和 CDC。 某些檢視 (transaction 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 Table | 所有透明、集區和叢集數據表和檢視表(交易 SE11)都支援完整載入。 您也可以使用時間戳或唯一標識符數據行,使用手動浮水印來擷取變更。 | RFC 呼叫 NetWeaver 應用程式和訊息伺服器。 | 基本、SNC | 必要條件 | 是,根據可設定的數據分割,快速進行內建平行載入。 | 大型 |
AnyDB 上的 BW 和 HANA 上的 BW。 不支援 BW/4HANA。 | 邏輯物件 | SAP BW Open Hub | 透過 Open Hub Destination (OHD) 本機數據表公開的 BW 物件,例如 DataSources、DSO、InfoCube、MultiProvider、CompositeProvider 和 Query(如果公開為 InfoProvider),支援完整載入。 如果 OHD 支援差異,則會支援 Delta。 | RFC 呼叫 NetWeaver 應用程式和訊息伺服器。 | 基本 | 必要條件。 在 SAP BW 中建立 SAP OHD 以公開數據。 | 是,快速使用以 OHD 特定架構為基礎的內建平行載入。 | 大型 |
AnyDB 上的 BW 和 HANA 上的 BW。 不支援 BW/4HANA。 | 邏輯物件 | 透過 MDX 的 SAP BW | BW InfoCubes 和 QueryCubes (包括 BEx 查詢) 支援完整載入。 不支援 Delta。 | RFC 呼叫 NetWeaver 應用程式伺服器。 | 基本 | 必要條件 | 更慢 | Small |
SAP ECC、S/4 HANA | 原始數據或邏輯物件 | 透過 SAP 閘道的 SAP ECC | OData 服務公開的任何物件,例如 SAP 資料表、檢視表、BAPI 物件、擷取器、資料或 IDOC 傳送至 SAP PI,可透過相對配接器接收為 OData 支援完整載入。 您也可以使用時間戳或唯一標識符數據行,使用手動浮水印來擷取變更。 | HTTP (OData) 呼叫 NetWeaver 應用程式和訊息伺服器。 | 基本 | 必要條件。 設定 SAP 閘道、啟用 OData 服務,並公開實體。 | 更慢 | Small |
SAP HANA | 原始數據或邏輯物件 | SAP HANA | HANA 資料庫數據列和數據行數據表、資訊模型(分析和計算檢視),以及自定義查詢支援完整載入。 您也可以使用時間戳或唯一標識符數據行,使用手動浮水印來擷取變更。 | ODBC 呼叫 HANA 資料庫。 | 基本、Windows (SSO) | 必要條件 | 是,根據可設定的數據分割,快速進行內建平行載入。 | 大型 |
SAP Cloud for Customer (SaaS CRM) | 原始數據或邏輯物件 | SAP C4C | 此連接器是雙向的。 它可以將數據複製到 SAP C4C 或從 SAP C4C 複製數據。 | 支援 OData 服務從 SAP C4C 公開的物件。 | HTTP (OData) 對 SaaS 服務的呼叫。 | 基本 | 更慢 | Small |
案例中可能有一個以上的連接器可供使用。 您的選擇取決於哪一個連接器提供您最佳的整合功能。 請考慮使用與較高層整合的連接器,例如 SAP 應用程式,而不是資料庫。 下列影像顯示建議的決策方向。
SAP ECC、S/4 HANA、SAP 應用程式整合 - 從 SAP ECC、S/4 HANA 或其他 SAP 應用程式擷取數據。
SAP BW 整合 - 從 SAP BW 和 B/4 HANA 擷取數據。