一鍵實時同步至Hologres
一鍵實時同步至Hologres方案支持全增量一體化同步,先進行全量數(shù)據(jù)遷移,然后再實時同步增量數(shù)據(jù)至目標端。同時,還支持單獨進行實時增量數(shù)據(jù)同步,適用于已經(jīng)通過其他方式將全量數(shù)據(jù)同步至Hologres的場景,本文為您介紹如何創(chuàng)建一鍵實時同步至Hologres任務。
前提條件
已完成數(shù)據(jù)源配置。您需要在數(shù)據(jù)集成同步任務配置前,配置好您需要同步的源端和目標端數(shù)據(jù)庫,以便在同步任務配置過程中,可通過選擇數(shù)據(jù)源名稱來控制同步任務的讀取和寫入數(shù)據(jù)庫。同步任務支持的數(shù)據(jù)源及其配置詳情請參見支持的數(shù)據(jù)源及同步方案。
說明數(shù)據(jù)源相關能力介紹詳情請參見:數(shù)據(jù)源概述。
已完成數(shù)據(jù)源環(huán)境準備。您可以基于您需要進行的同步配置,在同步任務執(zhí)行前,授予數(shù)據(jù)源配置的賬號在數(shù)據(jù)庫進行相應操作的權限。詳情請參見:數(shù)據(jù)庫環(huán)境準備概述。
背景信息
方案屬性 | 說明 |
讀寫表個數(shù) |
|
任務組成 | 當前方案將分別創(chuàng)建用于全量數(shù)據(jù)初始化的離線同步子任務,和用于增量數(shù)據(jù)實時同步的數(shù)據(jù)集成實時同步子任務,方案產(chǎn)生的離線同步子任務個數(shù)與最終讀取的源端表個數(shù)有關。 |
數(shù)據(jù)寫入 | 任務配置當天,先執(zhí)行全量數(shù)據(jù)初始化的離線同步任務,待全量數(shù)據(jù)執(zhí)行完成后,會啟動實時同步任務將增量數(shù)據(jù)實時同步至Hologres目標表。 說明 全量數(shù)據(jù)初始化完成后,該離線同步任務將會被凍結。 |
注意事項
同步數(shù)據(jù)至Hologres時,目前僅支持將數(shù)據(jù)寫入分區(qū)表子表,暫不支持寫入數(shù)據(jù)至分區(qū)表父表。
操作流程
步驟一:選擇同步方案
創(chuàng)建同步解決方案任務,根據(jù)需求選擇需要同步的源端數(shù)據(jù)源和目標端數(shù)據(jù)源,并選擇一鍵實時同步至Hologres方案。
步驟二:配置網(wǎng)絡連通
源端選擇已創(chuàng)建的源端數(shù)據(jù)源與目標端數(shù)據(jù)源,以及用于執(zhí)行同步任務的資源組。并測試資源組與數(shù)據(jù)源的網(wǎng)絡連通。詳情請參見:配置同步網(wǎng)絡鏈接。
步驟三:設置同步來源與規(guī)則
在基本配置區(qū)域,配置同步解決方案的名稱、任務存放位置等信息。
在數(shù)據(jù)來源區(qū)域,確認需要同步的源端數(shù)據(jù)源相關信息。
在選擇同步的源表區(qū)域,選中需要同步的源表,單擊圖標,將其移動至已選源表。
該區(qū)域會為您展示所選數(shù)據(jù)源下所有的表,您可以選擇整庫全表或部分表進行同步。
在設置表(庫)名的映射規(guī)則區(qū)域,單擊添加規(guī)則,選擇相應的規(guī)則進行添加。
同步時默認將源端數(shù)據(jù)表寫入目的端同名schema或同名表中,同時,您可以通過添加映射規(guī)則定義最終寫入目的端的schema或表名稱,實現(xiàn)將多張表數(shù)據(jù)寫入到同一個目標表中,或統(tǒng)一將源端某固定前綴的表名在寫入目標表時更新為其他前綴。支持通過正則表達式轉(zhuǎn)換寫入的schema名或表名,還支持使用內(nèi)置變量拼接目標表名。配置邏輯請參見:設置同步來源與規(guī)則。
步驟四:設置目標表
設置寫入Hologres策略。
寫入Hologres策略目前僅支持重放,重放表示鏡像功能,即源端INSERT一條記錄,Hologres中也INSERT一條記錄;源端執(zhí)行UPDATE或DELETE操作,Hologres中也進行UPDATE或DELETE。
刷新源表和Hologres表映射。
單擊刷新源表和Hologres表映射,將根據(jù)您在步驟三配置的目標文件映射規(guī)則來生成目標表,若步驟三未配置映射規(guī)則,將默認寫入與源表同名的目標表,若目標端不存在該同名表,將默認新建。同時,您可以修改表建立方式、為目標表在源有表字段基礎上增加附加字段。
功能
描述
為非主鍵表選擇主鍵
由于當前方案不支持無主鍵表同步,所以您需要單擊同步主鍵列的按鈕,為無主鍵表設置自選主鍵,即選擇表中一個或部分字段作為主鍵。
選擇表建立方式
支持自動建表和使用已有表。
當表建立方式選擇使用已有表時,您可以在Hologres表名列對應的下拉列表中選擇需要使用的表名稱。
當表建立方式選擇自動建表時,Hologres表名列顯示自動創(chuàng)建的Hologres表名稱。您可以單擊表名稱,查看和修改建表語句。
是否全量同步
您可以在全量同步列選擇是否需要在實時同步前先將全量數(shù)據(jù)同步至目標端。
如果關閉全量同步,則對應的表將不進行離線全量同步。適用于已經(jīng)通過其他方式將全量數(shù)據(jù)同步至目標端的場景。
為目標字段添加附加字段
單擊操作列的編輯附加字段,可以為目標表在源端字段的基礎上增加字段并為字段賦值。支持手動賦值常量與變量。
說明僅在表建立方式為自動建表時,可以使用此功能。
數(shù)據(jù)集成附加字段支持的變量字段如下:
EXECUTE_TIME:執(zhí)行時間 UPDATE_TIME:更新時間 DB_NAME_SRC:原始數(shù)據(jù)庫名稱 DB_NAME_SRC_TRANSED:轉(zhuǎn)換后數(shù)據(jù)庫名稱 DATASOURCE_NAME_SRC:源端數(shù)據(jù)源名稱 DATASOURCE_NAME_DEST:目的端數(shù)據(jù)源名稱 DB_NAME_DEST:目的端數(shù)據(jù)庫名稱 TABLE_NAME_DEST:目的端表名稱 TABLE_NAME_SRC:源端表名稱
編輯目標表結構
單擊Hologres表名列的表名可編輯目標表結構,例如,為目標表添加PK和Distribution Key,修改字段類型映射等。
同步至Hologres可能存在字段類型映射,即若目標端數(shù)據(jù)庫中沒有與源端一致的數(shù)據(jù)類型時,同步任務在創(chuàng)建目標表時,將自動根據(jù)源端字段為目標端匹配可寫入的字段類型。若您需要修改Hologres目標表字段類型映射,您可使用此功能。
說明僅在表建立方式為自動建表時,可以使用此功能。
步驟五:設置表粒度同步規(guī)則
即當源表發(fā)生插入、更新、刪除時,您可以在此處定義對應的處理策略。
正常處理:源端DML消息將會繼續(xù)下發(fā)給目標數(shù)據(jù)源,由目標數(shù)據(jù)源來處理。
忽略:直接丟棄該消息,不再向目標數(shù)據(jù)源發(fā)送對應的DML消息,對應數(shù)據(jù)不會改變。
有條件的正常處理:選擇后,您可以配置過濾條件,同步任務將按照您配置的過濾表達式對源端數(shù)據(jù)進行過濾,滿足過濾條件的數(shù)據(jù)會被正常處理,不滿足的會被忽略掉。
若不設置,則默認為“正常處理”。
步驟六:DDL消息處理規(guī)則
來源數(shù)據(jù)源會包含許多DDL操作,數(shù)據(jù)集成體提供默認處理策略,您也可以根據(jù)業(yè)務需求,對不同的DDL消息設置同步至目標端的處理策略。不同DDL消息處理策略請參見:DDL消息處理規(guī)則。
步驟七:設置任務運行資源
當前方案創(chuàng)建后將分別生成全量數(shù)據(jù)離線同步子任務和增量數(shù)據(jù)實時同步子任務。您需要在運行資源設置界面配置離線同步任務和實時同步任務的相關屬性。
包括實時增量同步及離線全量同步使用的獨享數(shù)據(jù)集成資源組、離線全量同步使用的調(diào)度資源組,同時,單擊高級配置可配置是否容忍臟數(shù)據(jù)、任務最大并發(fā)數(shù)、源庫允許支持的最大連接數(shù)等參數(shù)。
DataWorks的離線同步任務通過調(diào)度資源組將其下發(fā)到數(shù)據(jù)集成任務執(zhí)行資源組上執(zhí)行,所以離線同步任務除了涉及數(shù)據(jù)集成任務執(zhí)行資源組外,還會占用調(diào)度資源組資源。如果使用了獨享調(diào)度資源組,將會產(chǎn)生調(diào)度實例費用。您可通過任務下發(fā)機制對該機制進行了解。
離線和實時同步任務推薦使用不同的資源組,以便任務分開執(zhí)行。如果選擇同一個資源組,任務混跑會帶來資源搶占、運行態(tài)互相影響等問題。例如,CPU、內(nèi)存、網(wǎng)絡等互相影響,可能會導致離線任務變慢或?qū)崟r任務延遲等問題,甚至在資源不足的極端情況下,可能會出現(xiàn)任務被OOM KILLER殺掉等問題。
步驟八:執(zhí)行同步任務
進入 界面,找到已創(chuàng)建的同步方案。
單擊操作列的啟動/提交執(zhí)行按鈕,啟動同步的運行。
單擊操作列的執(zhí)行詳情,查看任務的詳細執(zhí)行過程。
后續(xù)步驟
完成任務配置后,您可以對已創(chuàng)建的任務進行管理、執(zhí)行加減表操作,或?qū)θ蝿张渲帽O(jiān)控報警,并查看任務運行的關鍵指標等。詳情請參見:全增量同步任務運維。