Azure Data Factory 和 Azure Synapse Analytics 中的異動資料擷取
適用於:Azure Data Factory Azure Synapse Analytics
提示
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費啟動新的試用版!
本文描述 Azure Data Factory 中的異動資料擷取 (CDC)。
若要深入了解,請參閱 Azure Data Factory 概觀或 Azure Synapse 概觀。
概觀
當您在雲端中執行資料整合和 ETL 程序時,您的作業執行狀態和效率會比您唯讀上次管線執行後已變更的來源資料更好且更有效率,而不是每次執行時一律查詢整個資料集。 ADF 提供多種不同方式,讓您輕鬆獲取上次執行後的異動資料。
異動資料擷取處理站資源
開始搭配使用資料處理站與 CDC 的最簡單且最快速的方式,是透過處理站層級異動資料擷取資源。 從主要管線設計工具中,按一下 [處理站資源] 下方的 [新增] 來建立新的異動資料擷取。 CDC 處理站資源提供設定逐步解說體驗,您可以在其中選取來源和目的地,並套用選用轉換,然後按一下 [開始] 以開始擷取資料。 使用 CDC 資源時,您不需要設計管線或資料流程活動。 正在處理資料時,您也只會支付四核心一般用途資料流程的費用。 您可以設定慣用延遲,而 ADF 將會使用此延遲來喚醒和尋找已變更的資料。 這是唯一會向您收費的時間。 最上層 CDC 資源也是持續執行程序的 ADF 方法。 ADF 中的管線僅限批次,但 CDC 資源可以持續執行。
對應資料流程中的原生異動資料擷取
ADF 對應資料流程可在來源資料庫中自動偵測及擷取變更的資料,包括已插入、已更新和已刪除的資料列。 因為使用了資料庫的原生異動資料擷取技術,所以不需要時間戳記或識別碼資料行即可識別變更。 只要在對應資料流程中鏈結來源轉換和資料庫資料集的接收器轉換參考,您可以看到來源資料庫上發生的變更會自動套用至目標資料庫,讓您可以輕鬆地同步兩份資料表之間的資料。 您也可以在它們之間新增任何轉換,讓任何商務邏輯處理差異資料。 定義接收器資料目的地時,您可以在接收器設定插入、更新、更新插入和刪除作業,而不需要 Alter Row 轉換,因為 ADF 能夠自動偵測資料列製作者。
支援的連接器
- SAP CDC
- Azure SQL Database
- SQL Server
- Azure SQL 受控執行個體
- Azure Cosmos DB (SQL API)
- Azure Cosmos DB 分析存放區
- Snowflake
對應資料流程中的自動累加擷取
ADF 對應資料流程可以在來源存放區中自動偵測及擷取最近更新的資料列或更新的檔案。 當您想要從資料庫取得差異資料時,需要有累加資料行才能識別變更。 當您只想從儲存體存放區載入新檔案或更新的檔案時,ADF 對應資料流程只要處理檔案的上次修改時間即可。
支援的連接器
- Azure Blob 儲存體
- ADLS Gen2
- ADLS Gen1
- Azure SQL Database
- SQL Server
- Azure SQL 受控執行個體
- 適用於 MySQL 的 Azure 資料庫
- 適用於 PostgreSQL 的 Azure 資料庫
- Common Data Model
管線中由客戶管理的差異資料擷取
您隨時可以針對所有 ADF 支援的資料存放區建置自己的差異資料擷取管線,包括使用查閱活動取得儲存在外部控制資料表中的浮水印值、複製活動或對應資料流程活動來查詢時間戳記或識別碼資料行的差異資料,以及將新的浮水印值寫回外部控制資料表的 SP 活動以供下一次執行使用。 當您只想從儲存體存放區載入新檔案時,您可以在每次成功將檔案移至目的地之後刪除檔案,或利用時間分割的資料夾或檔案名稱或上次修改時間來識別新檔案。
最佳做法
資料庫中的異動資料擷取
- 一律建議使用原生異動資料擷取作為取得變更資料的最簡單方式。 當 ADF 擷取變更資料進一步處理時,也會降低來源資料庫的負擔。
- 如果您的資料庫存放區不屬於具有原生異動資料擷取支援的 ADF 連接器清單,建議您檢查自動累加擷取選項,使用這個選項只需要輸入累加資料行即可擷取變更。 ADF 會負責其餘部分,包括建立差異載入的動態查詢,以及管理每次活動執行的檢查點。
- 管線中由客戶管理的差異資料擷取涵蓋所有 ADF 支援的資料庫,並可讓您自行彈性控制一切。
檔案型儲存體中的變更檔案擷取
- 當您想要從 Azure Blob 儲存體、Azure Data Lake Storage Gen2 或 Azure Data Lake Storage Gen1 載入資料時,對應資料流程讓您只要按一下即可取得新的或更新後的檔案。 這是最簡單的建議方式,可讓您從對應資料流程中的這些檔案型儲存體中取得載入的差異。
- 您可以取得更多最佳做法。
Checkpoint
當您在 ADF 對應資料流程中啟用原生異動資料擷取或自動累加擷取選項時,ADF 可協助您管理檢查點,以確保每次活動執行都會自動只讀取自上次管線執行後已變更的來源資料。 檢查點預設會與您的管線和活動名稱相結合。 如果您變更管線名稱或活動名稱,檢查點便會重設,這會導致您在下次執行時得從頭開始,或是取得從現在開始的變更。 如果您想要變更管線名稱或活動名稱,但仍想讓檢查點自動從上次的執行中取得變更的資料時,請在資料流程活動中使用您自己的檢查點索引鍵以達此目的。 您自己檢查點金鑰的命名規則與連結服務、資料集、管線和資料流程相同。
偵錯管線時,此功能的運作方式相同。 當您在偵錯執行期間重新整理瀏覽器時,檢查點會予以重設。 在您對偵錯執行的管線結果感到滿意之後,您可以繼續發佈並觸發管線。 當您第一次觸發已發佈的管線時,會自動從頭重新開始,或是取得從現在開始的變更。
在監視區段中,您隨時有機會重新執行管線。 重新執行時,一律會從所選管線執行的前一個檢查點擷取變更的資料。
教學課程
下列是在 Azure Data Factory 和 Azure Synapse Analytics 中啟動異動資料擷取的教學課程。
範本
下列是在 Azure Data Factory 和 Azure Synapse Analytics 中使用異動資料擷取的範本。