使用 Azure Data Factory 或 Azure Synapse Analytics 中的 SAP CDC 連接器,從 SAP ODP 來源轉換資料
適用於:Azure Data Factory Azure Synapse Analytics
提示
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用!
本文概述如何使用對應資料流,以使用 SAP CDC 連接器,從 SAP ODP 來源轉換資料。 若要深入了解,請閱讀 Azure Data Factory 或 Azure Synapse Analytics 的介紹文章。 如需使用 Azure Data Factory 與 Azure Synapse Analytics 轉換資料的簡介,請閱讀對應資料流或對應資料流相關教學課程。
提示
若要了解在 SAP 資料整合案例上的整體支援,請參閱使用 Azure Data Factory 的 SAP 資料整合白皮書,其中提供每個 SAP 連接器的詳細簡介、比較和指引。
支援的功能
下列功能支援此 SAP CDC 連接器:
支援的功能 | IR |
---|---|
對應資料流程 (來源/-) | ①、② |
① Azure 整合執行階段 ② 自我裝載整合執行階段
此 SAP CDC 連接器會使用 SAP ODP 架構,從 SAP 來源系統擷取資料。 如需解決方案架構的簡介,請參閱 SAP 知識中心的 SAP 異動資料擷取 (CDC) 簡介與架構。
SAP ODP 架構包含在所有最新的 SAP NetWeaver 型系統中,包括 SAP ECC、SAP S/4HANA、SAP BW、SAP BW/4HANA、SAP LT 複寫伺服器 (SLT)。 如需先決條件與最低必要版本,請參閱先決條件與設定。
若 SNC 已設定,則 SAP CDC 連接器支援基本驗證或保護網路通訊安全 (SNC)。
目前的限制
以下是 Data Factory 中 SAP CDC 連接器的目前限制:
- 您無法重設或刪除 Data Factory 中的 ODQ 訂用帳戶 (若要完成此目的,請在連線的 SAP 系統中使用交易 ODQMON)。
- 您無法使用 SAP 階層搭配此解決方案。
必要條件
若要使用此 SAP CDC 連接器,請參閱 SAP CDC 連接器的必要條件和設定。
開始使用
若要透過管線執行複製活動,您可以使用下列其中一個工具或 SDK:
使用 UI 建立 SAP CDC 連接器的連結服務
遵循準備 SAP CDC 連結服務中所述的步驟,在 Azure 入口網站 UI 中建立 SAP CDC 連接器的連結服務。
資料集屬性
若要準備 SAP CDC 資料集,請遵循準備 SAP CDC 來源資料集。
使用 SAP CDC 連接器轉換資料
原始的 SAP ODP 異動摘要很難解釋,而正確將其更新至接收可能是一項挑戰。 例如,必須理解與每個資料列相關聯的技術屬性 (像是 ODQ_CHANGEMODE),才能正確地將變更套用至接收。 此外,從 ODP 中擷取異動資料可能會包含對相同索引鍵的多項變更 (例如相同銷售順序)。 因此,請務必遵守變更的順序,同時透過平行處理變更來最佳化效能。 此外,管理異動資料擷取摘要也需要持續追蹤狀態,例如為了提供用於錯誤復原的內建機制。 Azure Data Factory 對應資料流會處理這些所有層面。 SAP CDC 連線能力因而會是對應資料流體驗的一部分。 使用者因此可以專注於必要的轉換邏輯,而不需要費心處理資料擷取的技術細節。
若要開始使用,請使用對應資料流來建立管線。
接下來,在 Azure Data Lake Gen2 中指定暫存連結服務和暫存資料夾,其可作為從 SAP 擷取之資料的中繼儲存體。
注意
- 暫存連結服務無法使用自我裝載整合執行階段。
- 應將暫存資料夾視為 SAP CDC 連接器的內部儲存體。 如需進一步最佳化 SAP CDC 執行階段,實作詳細資料 (例如用於暫存資料的檔案格式) 可能會因此變更。 因此建議您不要將此暫存資料夾用於其他用途,例如作為其他複製活動或對應資料流的來源。
SAP CDC 執行階段會使用檢查點索引鍵來儲存異動資料擷取程序的狀態資訊。 例如,這可讓 SAP CDC 對應資料流自動從錯誤情況復原,或知道是否已建立指定資料流程的異動資料擷取程序。 因此,請務必針對每個來源使用唯一的檢查點索引鍵。 否則,一個來源的狀態資訊會被另一個來源所覆寫。
注意
- 為避免衝突,預設會產生唯一識別碼來作為檢查點索引鍵。
- 使用參數來為多個來源利用相同的資料流程時,請務必以每個來源的唯一值來參數化檢查點索引鍵。
- 如果 SAP CDC 來源內的 [執行模式] 設定為 [每次執行均完整] (參閱下一節),就不會顯示檢查點索引鍵屬性,因為在此情況下不會建立任何異動資料擷取程序。
參數化檢查點索引鍵
需要檢查點索引鍵,才能管理異動資料擷取程序的狀態。 為了有效管理,您可將檢查點索引鍵參數化,以允許連線到不同的來源。 以下說明如何實作參數化檢查點索引鍵:
建立全域參數,以將檢查點索引鍵儲存在管線層級,進而確保執行間的一致性:
"parameters": { "checkpointKey": { "type": "string", "defaultValue": "YourStaticCheckpointKey" } }
以程式設計方式設定檢查點索引鍵,以在每次執行時,以所需值叫用管線。 以下是使用參數化檢查點索引鍵的 REST 呼叫範例:
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/pipelines/{pipelineName}?api-version=2018-06-01 Content-Type: application/json { "properties": { "activities": [ // Your activities here ], "parameters": { "checkpointKey": { "type": "String", "defaultValue": "YourStaticCheckpointKey" } } } }
如需詳細資訊,請參閱 SAP CDC 連接器的進階主題。
對應資料流程屬性
若要使用 SAP CDC 連接器作為來源建立對應資料流,請完成下列步驟:
在 ADF Studio 中,前往 [作者] 中樞的 [資料流] 區段,選取 […] 按鈕以下拉 [Data flow actions] \(資料流動作\) 功能表,然後選取 [New data flow] \(新增資料流\) 項目。 利用資料流畫布頂端列的資料流偵錯按鍵,開啟偵錯模式。
在對應資料流建立器,選取加入來源。
在 [來源設定] 索引標籤上,選取備妥的 SAP CDC 資料集,或選取 [新增] 按鈕以建立新的資料集。 或者,您也可以在 [來源類型] 屬性中選取 [內嵌] 並繼續,而無須定義明確的資料集。
如果您想要在每次執行對應資料流時都載入完整快照集,請在 [來源選項] 索引標籤上選取 [每次執行均完整] 選項。 如果您想要訂閱 SAP 來源系統的異動摘要 (包括初始完整資料快照集),請選取 [第一次執行時完整,然後增量]。 在此情況下,管線的第一次執行會執行差異初始化,這表示它會在來源系統中建立 ODP 差異訂用帳戶,並傳回目前的完整資料快照集。 後續管道執行僅會傳回自上次執行以來的增量變更。 僅增量變更選項會建立 ODP 差異訂用帳戶,而不會傳回第一次執行中的初始完整資料快照集。 同樣的,後續執行僅會傳回自上次執行以來的增量變更。 兩種增量載入選項都需要在 [索引鍵資料行] 屬性中指定 ODP 來源物件的索引鍵。
如需 [投影]、[最佳化] 與 [檢查] 索引標籤,請遵循對應資料流。
使用來源資料分割最佳化完整或初始載入的效能
如果 [執行模式] 是設定為 [每次執行均完整] 或 [第一次執行時完整,然後增量],則 [最佳化] 索引標籤會提供稱為 [來源] 的選取項目和資料分割類型。 此選項可讓您指定多個分割 (也就是篩選) 條件,以將大型來源資料集分為多個較小的部分。 針對每個分割,SAP CDC 連接器會在 SAP 來源系統中觸發個別的擷取程序。
如果分割的大小相等,來源資料分割可以線性增加資料擷取的輸送量。 若要實現此類效能改進,SAP 來源系統中、裝載自我裝載整合執行階段的虛擬機器,以及 Azure 整合執行階段都需要足夠的資源。
相關內容
- SAP CDC 功能的概觀和結構 (部分機器翻譯)
- 透過 SAP CDC 從 SAP 複寫多個物件
- SAP CDC 進階主題 (部分機器翻譯)