1. 概述
1.1 應用場景
企業在構建數倉和中間庫時,由於業務資料量級較大,如果使用 資料同步 批量定時同步資料很難做到高效能的增量同步,若使用清空目標表再寫入資料的方式時,還會面臨目標表一段時間不可用、抽取耗時長等問題。
因此希望能在資料庫資料量大或表結構規範的情況下,實現高效能的實時資料同步。
1.2 實現原理
FDL 監聽資料管道來源端的資料庫日誌變化,利用 Kafka 作為資料同步中間軟體,暫存來源資料庫的增量部分,進而實現向目標端實時寫入資料的效果。

1.3 功能簡介
實時管道任務可將源端資料庫的單張表、多張表(最多5000張表)實時同步到目標端(原表原樣同步,不能對資料進行處理)。
實時管道任務運作後,一般情況下無需再次啟動,當源端資料發生增刪改或者源端表結構發生變化時(源表新增欄位、刪除欄位、修改欄位名稱等),目標端可自動實時同步變化。
當實時管道任務意外中止後,支援斷點續傳:若全量同步未完成,會從頭全量同步;若全量同步已完成,會從斷點開始。
斷點續傳範例:實時管道任務在 03-21 日讀取了資料,03-23 日停掉,03-27 日啟動,03-23 到 03-27 日的資料會同步過去。
優勢:可實時將大規模資料自動同步到目標表中。
2. 使用限制&注意事項
2.1 使用限制
管道任務不支援同步檢視表和索引。
建立實時管道任務需要有某資料夾 OR 所有實時管道任務的管理權限。詳情請參見:管道任務管理權限
同一個管道任務只能配置一個資料源的多對一(使用 分組表 功能)和多對多,如果是不同資料源,需要配置多個資料管道任務。
單個任務限制最多選取 5000 張表,達到限制時不允許新增選擇
2.2 注意事項
不建議使用者使用資料管道同步 longtext 類型的欄位,否則 Kafka 會有問題,運作效率也會有問題。
不建議來源表欄位名稱中包含空格,否則任務啟動將會報錯。
3. 功能概述

| 功能 | 描述 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 資料源 | 實時同步支援多種資料源,可以將多種來源端及目標端資料源搭配組成同步鏈路進行資料實時同步。資料管道支援的資料源請參見:資料管道支援的資料源類型 | ||||||||||
| 同步場景 | 同步物件說明:
同步類型說明: 詳情請參見:同步類型
| ||||||||||
| 任務配置 | 1)任務配置前,需要先準備資料庫環境、管道任務環境。詳情請參見:資料管道使用說明 文檔的第二章、第三章內容 2)在 FDL 中配置管道任務時,步驟簡單,無需編寫程式碼;功能豐富。詳細說明如下:
| ||||||||||
| 任務維運 | 詳情請參見:管道任務維運
| ||||||||||
| 資料中心 | 4.1.6.1 及之後版本,可在 FDL 的 庫表管理 功能中,查看、修改表資料(快速檢查實時同步效果) 4.1.11.1 及之後版本,可查看管道任務中所使用資料表的血緣關係,詳情請參見:血緣分析 | ||||||||||
| 其他 | 4.1.9.3 及之後的版本支援使用「回收站」進刪除任務的還原、管理,詳情請參見:回收站 4.1.6.3 及之後版本,管道任務禁止被多人同時編輯,詳情請參見:任務禁止被多人同時編輯 |
4. 使用流程
資料管道功能使用說明請參見:實時管道使用說明

5. 知識擴展
1)使用者想了解某個管道任務是誰編輯的、編輯時間、斷點相關資訊等,FDL 工程內的管道任務維運無法滿足需求,可參見解決方案:BI儀表板展示管道任務編輯資訊
2)使用者的管道任務實現上百張表的實時同步,且存在部分來源表和目標表的表名不同、多張來源表同步到一張目標表等情況,導緻使用者在管理來源表和目標表的對應關系時(例如重構任務)較為困難。可參見解決方案:匯出管道任務中來源表及對應的目標表資訊
