完成資料來源、網路、資源的準備配置後,您可以根據同步情境選擇不同的同步類型,建立並執行同步任務,將源端資料同步至目標端。本文為您介紹同步任務的通用配置流程,不同的資料來源及同步類型配置,其流程可能存在差異,具體配置細節,請以介面文案提示為準。
前提條件
已完成資料來源配置。您需要在Data Integration同步任務配置前,配置好您需要同步的源端和目標端資料庫,以便在同步任務配置過程中,可通過選擇資料來源名稱來控制同步任務的讀取和寫入資料庫。同步任務支援的資料來源及其配置詳情請參見支援的資料來源及同步方案。
說明資料來源相關能力介紹詳情請參見:資料來源概述。
已完成資料來源環境準備。您可以基於您需要進行的同步配置,在同步任務執行前,授予資料來源配置的帳號在資料庫進行相應操作的許可權。詳情請參見:資料庫環境準備概述。
背景資訊
Data Integration基於源端資料庫與目標端資料庫類型為您提供豐富的資料同步任務,同步類型包括:整庫離線同步(一次性全量同步、周期性全量同步、離線全增量同步處理、一次性增量同步處理、周期性增量同步處理)、即時同步(一次性全量同步,即時增量同步處理)。不同源端與目標端資料庫支援的同步類型不同,具體支援的同步類型詳情請參考產品介面。更多同步任務產品能力介紹,詳情請參見:Data Integration側同步任務能力說明。
使用限制
同步任務暫不支援跨時區同步資料。如果同步任務中讀取和寫入的資料來源與使用的DataWorks資源群組不在同一個時區,將會導致時間類型欄位同步錯誤。
整庫離線同步僅支援同步資料來源指定的預設庫。
注意事項
DataWorks即時同步通常在以下情況下需要手動設定位點:
同步任務中斷後恢複:如果同步任務中斷,重啟任務時需要手動設定位點為中斷的時間點,以確保從斷點繼續同步。
資料丟失或異常:如果在同步過程中探索資料丟失或異常,需要手動重設位點到資料寫入之前的某個時間點,以確保資料完整。
調整任務配置:在調整任務配置後,例如修改目標表或欄位對應,需要手動設定位點以確保資料同步的準確性。
如果您在執行同步任務時提示位點錯誤或不存在,請按如下方式解決:
重設位點:在啟動即時同步任務時,重設位點並選擇源庫可用的最早位點。
調整日誌保留時間:如果資料庫位點到期,可以考慮在資料庫中調整日誌的保留時間,例如設定為7天。
資料同步:如果資料已經丟失,可以考慮重新全量同步,或者配置一個離線同步任務來手動同步丟失的資料。
進入同步任務
同步任務的建立入口在Data Integration模組,您需要前往Data Integration模組頁面進行建立。
登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的 ,在下拉框中選擇對應工作空間後單擊進入Data Integration。
操作流程
步驟一:建立同步任務
您可以通過以下兩種方式建立同步任務:
方式一:在同步任務頁面,選擇來源和去向,單擊建立同步任務。
方式二:在同步任務頁面,如果工作清單為空白,單擊請建立。
步驟二:選擇同步類型
您可以根據業務需要選擇要同步的來源和去向資料來源類型。選擇後,Data Integration基於源端資料庫與目標端資料庫類型為您展示目前支援的同步類型,您可以根據業務需要進行選擇。
支援的資料來源及同步方案請參見:支援的資料來源及同步方案。
步驟三:網路與資源配置
在此步驟中,您需要選擇要執行同步任務的資源群組以及同步的來來源資料源與去向資料來源。並測試資源群組與資料來源的網路連通。
若還未建立資料來源,請單擊介面的新增資料來源按鈕,建立資料來源。詳情請參見:資料來源概述。
步驟四:同步任務配置
單擊下一步,然後根據具體任務類型按介面說明進行同步相關配置。
步驟五:啟動同步任務
您可以執行任務並查看任務詳細執行過程。
進入
頁面,在工作清單地區找到已建立的同步方案。單擊操作列的啟動按鈕,啟動同步任務。
單擊執行概覽列的同步資訊,查看任務的詳細執行過程。
附錄:進階配置
設定同步來源與規則
選擇源端資料來源中需要同步的庫和表後,同步任務預設將源端資料庫、資料表寫入目標端同名schema或同名表中,如果目標端不存在該schema或表,將會自動建立。同時,您可以通過目標Schema名映射自訂、目標表名映射自訂定義最終寫入目標端的schema或表名稱。實現將多張表資料寫入到同一個表中,或統一將源端某固定首碼的庫名或表名在寫入目標庫或表時更新為其他首碼。
目標Schema名映射自訂
源端資料庫名字串替換:源端資料庫名或Schema名支援通過Regex轉換為目標端最終寫入的Schema名。
樣本:將源端
doc_
首碼的庫名替換為pre_
首碼。目標Schema名建置規則:支援使用內建變數和字串拼接產生最終目標Schema名。
樣本:對上一步源端資料庫名和目標Schema名轉換規則轉換後的Schema名做進一步字串拼接處理,使用源端資料庫名代表上一步的處理結果,再為該內建變數增加尾碼,例如,
源端資料庫名_d
。
目標表名映射自訂
源端表名字串替換:源端表名支援通過Regex轉換為目標端最終寫入的表名。
樣本1:將源端
doc_
首碼的表資料,寫入首碼為pre_
的目標表中。樣本2:將多張表資料寫入到一張目標表。
將源端名稱為
table_01
、table_02
和table_03
的表同步至一張名為my_table
的表中。配置正則表名轉換規則為:源:table_*
,目標:my_table
。
目標表名建置規則:支援使用內建變數和字串拼接產生最終目標表名。
您可以在編輯內建變數的源端資料來源名、源端資料庫名或源端表名頁簽設定源於目標的字串替換規則,然後在目標表名中直接使用對應內建變數。
樣本:對上一步源表名和目標表名轉換規則轉換後的表名做進一步字串拼接處理,使用源端表名代表上一步的處理結果
my_table
,再為該內建變數增加首碼和尾碼,例如,pre_源端表名_post
,最終就映射到了名為pre_my_table_post
的目標表。
設定目標表
您可以定義寫入目標表的相關屬性,例如,選擇寫入目標端已有表還是建立表、目標表的描述、欄位、分區欄位以及生命週期等。
此步驟中,單擊應用並重新整理映射按鈕後,將會根據配置的表規則來映射源端表與目標端表的寫入關係。
此處的配置項根據目標端資料來源類型的不同而存在一定的差異,具體以各方案實際配置介面為準。詳情請參見:支援的資料來源及同步方案。
設定寫入規則
此步驟根據選擇的同步方案類型不同,需要進行的配置存在一定差異:
DDL訊息處理規則(即時同步任務):
對於關係型資料的即時同步,其原始即時資訊會包含DDL操作,此處可以在右上方單擊DDL能力配置,設定針對這些DDL訊息同步到目標表時的操作。不同資料來源支援的DDL操作可能存在差異,詳情請參見:支援的DML及DDL操作。您也可以在 頁面,針對每個寫入的目標資料庫類型,設定預設的DDL處理策略。
同步規則設定(整庫離線同步):
當使用整庫離線同步時,需要定義同步策略。例如,增量同步處理的過濾條件設定、同步任務的調度周期設定等。
增量條件:您可通過WHERE語句對待同步的資料表進行過濾,且只需在增量條件框中填寫WHERE子句,無需寫WHERE關鍵字。同時,在寫WHERE子句時,您可以使用系統內建變數,例如使用
${bdp.system.bizdate}
指代業務日期、使用${bdp.system.cyctime}
指代定時時間等。說明您可以使用調度參數來指定同步源表及目標表的資料範圍,調度參數使用說明請參見:Data Integration使用調度參數的相關說明。
周期配置:由於需要進行周期性調度,所以需要定義周期性調度任務時的相關屬性,包括調度周期、生效日期、暫停調度等。當前方案的調度配置與DataWorks中節點的調度配置一致,參數詳情可參見時間屬性配置說明。
設定任務運行資源及參數配置
在此步驟中,您可以
在右上方單擊資源群組配置,配置任務執行所使用的資源群組。
說明DataWorks的離線同步任務通過調度資源群組將其下發到Data Integration任務執行資源組上執行,所以離線同步任務除了涉及Data Integration任務執行資源組外,還會佔用調度資源群組資源。
如果使用Serverless資源群組,則無需關注,Data Integration與調度均由Serverless資源群組管理,
如果使用獨享調度資源群組,將會產生調度執行個體費用。
您可通過DataWorks資源群組概述對該機制進行瞭解。
在右上方單擊進階參數配置,設定資料庫最大串連數、並發數等參數值。
說明不同資料來源的參數不同,請以實際介面展示為準。
後續步驟
完成任務配置後,您可以對已建立的任務進行管理、執行加減表操作,或對任務配置監控警示,並查看任務啟動並執行關鍵計量等。詳情請參見:全增量同步處理任務營運。