列名如果包含中文,不支援寫入。
資料來源寫入的時候,空字串要用一對單引號,不能用雙引號。
4.2.7.3 版本及之後,定時任務支援讀取 StarRocks 資料庫的分割槽表。
1)4.2.7.3 及之後版本,定時任務支援寫入 StarRocks 資料庫的分割槽表。
2)目標表若為自動建表,支援選取目標表裏的某些欄位作為分割槽鍵。各配置項說明見下表:
範圍分割槽(RANGE)
列表分割槽(LIST)(StarRocks 3.1 及以上版本支援)
自動範圍分割槽(StarRocks 3.0 及以上版本支援)
自動列表分割槽(StarRocks 3.1及以上版本支援)
選擇映射已有欄位作為分割槽欄位。
不同分割槽方式可選的分割槽欄位如下:
範圍分割槽:DATE、DATETIME、TINYINT、SMALLINT、INT、BIGINT、LARGEINT
列表分割槽:BOOLEAN、TINYINT、SMALLINT、INT、BIGINT、LARGEINT、DATE、DATETIME、CHAR、VARCHAR
自動範圍分割槽
date_trunc:DATE、DATETIME
time_slice:DATETIME
自動列表分割槽:字串(不支援 BINARY)、日期、整數和布爾值,不支援分割槽列的值為 NULL
進行分割槽配置,支援新增多個分區
StarRocks 3.0 及以上版本的分割槽欄位為「數值/日期時間/日期」類型時,支援「自動分割槽間隔」
若資料去向選擇了「StarRocks」資料源,則設定去向端表時,需要選擇表類型,如下表所示:
注1:StarRocks支援自動建表的表類型,表名首字母必須為英文,否則建表會失敗。
注2:4.1.10.1 及之後版本,StarRocks 作為目標端&目標表的類型為自動建表時,自動將來源端主鍵標記為自動建表的主鍵。
不支援設定物理主鍵
支援設定 NOT NULL
4.1.11.5 及之後的版本,資料來源的配置方式為「選表」&目標表建表方式選擇「自動建表」,欄位映射中可自動獲取來源表的 NOT NULL 資訊
必須設定物理主鍵
當寫入方式選擇"基於標識欄位,追加/更新/刪除資料"時,只支援物理刪除,不支援邏輯刪除
StarRocks 1.19及以上版本支援使用
4.2.3.1 及之後版本:來源表無主鍵,「資料去向與映射」Tab 中為目標表配置主鍵時,不支援將 Decimal 類型的欄位設定為目標表的主鍵
若資料去向選擇了「StarRocks」資料源,則設定去向端表時,需要選擇表類型,後續設定寫入方式時有一定的限制,如下表所示:
1)寫入方式選擇「直接將資料寫入目標表」時,不支援配置主鍵映射和主鍵衝突策略
2)寫入方式不支援「基於標識欄位,追加/更新/刪除資料」
主鍵模型(Primary Key)
1)當選擇"直接將資料寫入目標表"時,主鍵衝突策略只能選擇:
主鍵相同,改寫目標表的資料
不支援:
主鍵相同,忽略輸入源的資料
主鍵相同,停止寫入並報錯
2)更新模型(Unique Key),寫入方式選擇「基於標識欄位,追加/更新/刪除資料」時,只支援物理刪除,不支援邏輯刪除
更新模型(Unique Key)
2)不支援選擇"基於標識欄位,追加/更新/刪除資料";
寫入 StarRocks 時,FDL 使用預設分隔符分割行列資料,若待寫入資料中包含預設分隔符,寫入將報錯
範例說明:
待寫入資料:
若 FDL 使用, 作為分隔符,寫入時,A 列的 1,1 將會被,分割拆開寫入,寫入出錯
建議:
使用者可以先檢查源端是否同步了二進制欄位,將二進制欄位取消同步,再使用公式將分隔符進行取代(例如取代為空格)
支援指定行列分隔符。如下圖所示:
注:行列分隔符不能相同
列分隔符說明:
下拉框支援選項:自動處理、推薦分隔符(\x01)、英文逗號、列表符、英文分號、管道符、ASCII字元
優點:
若來源端資料包含 FDL 預設分隔符,會幫使用者做轉義取代(使用轉義符來轉義資料中的行列分隔符),確定資料寫入成功
缺點:
會損失一些寫入效能
大部分場景中,使用者資料中不會包含 \x01,避免寫入出錯的同時,保證效能
若使用者資料中包含 \x01,FDL 不做轉義取代,寫入將報錯
行分隔符說明:支援設定CR+LF、LF、ASCII字元作為行分隔符
4.2.4.3 版本「行分隔符」增加「推薦分隔符」為\x02,同時預設選中,保證取代為行分隔符後低版本資料正常。
「行分隔符」其實是\x02 ,取代為換行符後,對於低版本資料庫,在沒有正確處理「列分隔符」的情況下,會造成資料異常,因此增加該功能。
注:資料管道需要資料庫版本在 2.3 以上。
1)若資料去向選擇了「StarRocks」資料源,則設定去向端表時,需要選擇表類型,如下表所示:
注2:作為管道匯出端時,不支援邏輯主鍵。
僅展示,不可選
支援設定物理主鍵
2)4.2.7.3 及之後版本,管道任務中目標表若為自動建表,支援選取目標表裏的某些欄位作為分割槽鍵;目標表若為已存在表,支援寫入分割槽表。
詳細說明可參考本文 2.2 節
4.1.10.1 之前版本,StarRocks 作為目標端時,不支援 DDL 同步;4.1.10.1 及之後版本,StarRocks 作為目標端時,支援 DDL 同步。
StarRocks 作為目標端,源端修改列類型時,DDL 支援的修改操作如下:
TINYINT/SMALLINT/INT/BIGINT 轉換成 TINYINT/SMALLINT/INT/BIGINT/DOUBLE
TINYINT/SMALLINT/INT/BIGINT/LARGEINT/FLOAT/DOUBLE/DECIMAL 轉換成 VARCHAR
VARCHAR 支援修改最大長度
VARCHAR 轉換成 TINYINT/SMALLINT/INT/BIGINT/LARGEINT/FLOAT/DOUBLE
VARCHAR 轉換成 DATE (目前支援 "%Y-%m-%d","%y-%m-%d", "%Y%m%d","%y%m%d","%Y/%m/%d,"%y/%m/%d " 六種格式化格式),DATETIME 轉換成 DATE(僅保留年-月-日資訊,例如: 2019-12-09 21:47:05 <--> 2019-12-09) DATE 轉換成 DATETIME (時分秒自動補零,例如: 2019-12-09 <--> 2019-12-09 00:00:00)
FLOAT 轉換成 DOUBLE
INT 轉換成 DATE (如果 INT 類型資料不合法則轉換失敗,原始資料不變)
對於支援範圍外的欄位修改操作,資料庫會報錯,管道任務會列印 DDL 應用失敗的日誌。
4.1.7.2 之前版本,資料管道實時資料不支援「同步時標記時間戳」功能;FDL 為 4.1.7.2 及之後版本 & StarRocks 版本為 2.1 之後,支援「同步時標記時間戳」功能。
選擇了邏輯刪除,且需要自動建立對應列欄位,會導致作為匯出端的管道任務第一次啟動速度較慢(最長可能幾十秒),這是因為SR 在更新 SCHEMA 時, 會鎖表且時間較長,之後對目標表的修改操作會被阻擋。
insert 和 update 都處理為 insert, 透過 stream load 方式寫入目標表。
當DB表匯出選擇 StarRocks 作為資料去向:
表類型無限制
表類型如果為明細模型:
欄位映射處不展示主鍵列,支援無主鍵同步(將插入事件的資料直接插入到目標表),任務重啟時可能有重複資料,發生刪除和更新事件將導致報錯
5.0.0.4 及之後版本,當前任務中存在產生更新流的算子&寫入 StarRocks 時,不支援無主鍵同步;會產生更新流的算子:CDC輸入、分組匯總、資料聯動(多個實時資料源進行聯動)
寫入方式處,不支援配置主鍵映射,不支援配置邏輯刪除
表類型支援選擇主鍵模型、明細模型
欄位映射處,可以選擇表類型為明細模型,當選擇明細模型時:
欄位映射時不展示「主鍵」列,支援無主鍵同步(將插入事件的資料直接插入到目標表),任務重啟時可能有重複資料,發生刪除和更新事件將導致報錯
4.2.7.3 及之後版本,資料服務支援選擇 Doris 資料庫的分割槽表。
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙