1. 概述编辑
1.1 版本
FineDataLink 版本 | 功能變動 |
---|---|
4.0.18 |
|
4.1.11.2 | YMatrix 資料庫支援該功能 |
4.2.2.1 | SelectDB 資料庫支援該功能 該功能支援叢集環境 |
4.2.3.3 | InterSystems IRIS 資料庫支援該功能 |
1.2 應用場景
在使用「資料管道」和「資料同步」、「資料轉換」進行資料跨庫同步時,由於業務資料的複雜性,導致來源資料庫大小寫混用、不同來源資料庫預設大小寫規則不一致,導致同步到目標庫大小寫不一致,管理和使用混亂。
使用者希望透過 FDL 自動建表同步資料庫至目標庫時,能統一表名和欄位名大小寫,形成管理規範。
1.3 功能說明
FineDataLink 設計「資料管道」、「資料同步」、「資料轉換」等任務進行「自動建表」同步資料時,表名和欄位名支援大小寫轉換;表名、欄位名支援大小寫自動糾正。
1.4 約束限制
1)當前通用配置支援的資料源類型為:ClickHouse、GaussDB 200、Greenplum、Greenplum/Greenplum(並行裝載)/FineData、Hive、Hive(HDFS)、HSQL、IBM DB2、Impala、Informix、MongoDB、MySQL、Oracle、PostgreSQL、Presto、SAP HANA、SQL Server、SQLite、達夢、華為 GaussDB 200、南大通用 Gbase 8A、人大金倉 KingbaseES、YMatrix。
2)「通用配置」僅超級管理者支援設定,不支援分配其他使用者使用和管理權限。
2. 操作步驟编辑
2.1 進行通用配置
點選「管理系統>通用配置」,點選「自動建表配置」,如下圖所示:
選擇指定的資料連結,來批量修改該資料連結對應資料庫中的表名、欄位名,如下圖所示:
此處的「適用物件」支援選擇的範圍為「管理系統>資料連結」中已經設定的資料連結。
2.2 效果查看
進入資料開發並建立「資料同步」節點,將資料寫入 2.1 節已經設定自動建表表名和欄位名全部轉大寫的「fdl_demotest」資料連結。
此時自動建立目標資料表,輸入表名會自動修改為通用設定中的大寫模式,同時欄位映射中目標表欄位名稱也改為大寫模式,如下圖所示:
「資料管道」任務同理,此時自動建立目標資料表,輸入表名會自動修改為通用設定中的大寫模式,同時欄位映射中目標表欄位名稱也改為大寫模式,如下圖所示:
3. 相容說明编辑
1)資料管道-選擇已存在表/自動建表時的相容
自動建表:當使用者在配置任務時如果選擇了大小寫轉換和前後綴設定,則應先按照使用者的設定進行大小寫轉換和前後綴設定後,再進行自動建表,如果使用者在進行前後綴前,已經對表名和欄位名進行了操作,則改寫;
2)資料管道目前的同步時間戳和邏輯刪除標記欄位預設為小寫,這兩個欄位與使用者的其他欄位保持統一規則、跟隨使用者的大小寫設定而變化;如使用者如果開啟全部大寫設定,則時間戳和邏輯刪除標記也應為大寫。
3)當任務已存在,再開啟大小寫選項
資料管道:
對於未運作的任務,當資料連結的大小寫設定為全大寫或全小寫時,欄位名和表名按照「通用設定」生效。
對於已經運作的任務,「通用設定」不生效;
定時任務:
完全按照使用者在介面配置的表名和欄位名進行自動建表,「通用配置」不生效;
在使用者選擇新的資料去向後(包括重新選擇),按照選擇的資料連結的大小寫設定進行規範表名和欄位名,欄位映射會被清空、等同於建立節點;
當使用者在欄位映射介面點選重新獲取後,按照選擇的資料連結的大小寫設定進行欄位名規範;
4. 注意事項编辑
問題描述:
自動建表運作後,提示報表不存在。且自動建表運距複製出來無法執行。
原因分析:
部分類型資料庫存在一些特定限制。例如 MySQL 資料庫的 varchar 長度之和不能超過65535。
解決方案:
排查是否違反了對應資料庫的規定,調整欄位類型或長度。