1. 概述
1.1 版本
FineDataLink 版本 | 功能變動 |
---|---|
4.1.11.2 | 定時任務支持讀取和寫入 YMatrix 數據庫 管道任務支持寫入 YMatrix 數據庫 數據服務支持讀取 YMatrix 數據庫 庫表管理模塊支持 YMatrix 數據庫 |
4.1.14.1 | 數據連接支持配置套接字超時(SocketTimeout 設置項中配置),控制數據庫查詢時間在一個合理範圍内,避免出現無限等待的問題 |
1.2 功能簡介
FineDataLink 支持連接 YMatrix 數據庫,進行定時任務讀寫、管道任務寫入,以及作爲數據服務數據發布源
2. 配置需知
注:需要注冊相關功能點才能使用該數據源,詳情請參見:功能點限制
2.1 管道任務
數據管道使用 YMatrix 作爲目标表時,都是用的 COPY 裝載模式。
在使用并行裝載數據源前,需要賦予數據連接對應用戶指定權限。
1)可以賦予數據連接賬号在對應數據庫創建模式的權限。
2)在目标數據庫先創建 fdl_temp 模式用來存放臨時表,然後賦予普通用戶這個模式的建表權限即可。
示例命令如下:
2.2 定時任務
若用戶需要使用 YMatrix 作爲寫入端數據源時,支持三種裝載方式:并行裝載、COPY裝載、普通裝載。三種裝載方式區别如下表所示:
裝載方式 | 區别 |
---|---|
普通裝載 | 1)向 YMatrix 寫入數據時,不建議選擇該方式 2)若只從 YMatrix 讀取數據,建議按照本文第四章步驟配置數據連接 |
并行裝載 | 1)支持寫入 JSON 類型字段,但仍不支持寫入二進制字段 2)并行裝載在大數據量、大規模集群場景下性能優於 COPY 3)配置數據連接時需按照本文第三章步驟操作,配置并行裝載設置 注:若選擇并行裝載方式,需要進行權限指定。 |
COPY裝載 | 1)支持寫入二進制字段、JSON 字段 2)配置數據連接時,參考本文第四章即可,不用配置并行裝載設置 若選擇 COPY 裝載方式,需要在目标數據庫先創建 fdl_temp 模式用來存放臨時表,需要用戶有建表、建指定模式的權限(如果已由 DBA 建好模式并賦權,數據庫用戶可不需要建schema的權限) |
2.2.1 并行裝載方式賦權
使用 YMatrix 作爲目标表時,若使用并行裝載模式,則需要進行權限指定。
1)gpfdist_temp 模式下的建表和已有表的讀取權限。
注:若不想設置已有表的讀取權限,也可以将該模式下 ext_gpload_* 和 staging_gpload_* 表删除,需要先将使用并行裝載的任務關停,移除後只需要有 gpfdist_temp 模式下建表權限即可。
2)建立外部表的權限。
3)目标表的讀取權限,如果要自動建表的話還需要對應庫的建表權限。
2.2.2 COPY 裝載方式賦權
詳情參見本文 2.1 節。
2.3 數據服務
數據服務支持 YMatrix 數據庫,但需要配置「并行裝載設置」項。數據服務請參見:数据服务概述
3. 配置并行裝載設置
3.1 前提條件
詳情請參見:前提条件
3.2 版本和驅動
下載驅動包,并将其上傳至 FineDataLink 中,如何上傳詳情可參見:驱动管理
支持的數據庫版本 | 驅動 |
---|---|
5.X | PostgreSQL驅動,請下載最新版 |
3.3 連接步驟
1)管理員登錄 FDL 工程,點擊「管理系統>數據連接>數據連接管理」,選中某個文件夾後,新建數據連接。如下圖所示:
2)設置數據連接名稱(可同時修改數據連接所在目錄)。如下圖所示:
3)可根據數據源分類、支持形式、适配模塊、數據源名稱篩選數據庫。如下圖所示:
4)輸入連接信息。驅動選擇「自定義」,并勾選 3.2 節上傳的驅動。
模式需要連接數據庫後才可以選擇,所以需要先點擊「點擊連接數據庫」後,再選擇「模式」。如下圖所示:
注1:在未配置庫和模式時,會讀取到默認的庫和模式;用戶需要在配置數據連接時指定庫和模式。
注2:若有管道任務使用了 YMatrix 數據連接,後續變動數據連接用戶名的話,需要爲新的數據連接用戶賦予 fdl_temp 模式和内部表的權限。
若需要向 YMatrix 數據庫寫入數據,需要配置「并行裝載設置」項。如下圖所示:
「并行裝載設置」說明如下表所示:
設置項 | 說明 |
---|---|
服務器地址-節點1 | 必填;輸入 gpfdist 服務地址,要求配置 FDL 所在服務器上能被 SEG 訪問到的 IP 當數據平台所在環境爲集群環境時,展示多個配置項,配置項均爲可輸入下拉框,配置名爲:服務器地址-節點X |
複用臨時表 | 是否複用臨時表(複用臨時表在高頻裝載時,可有效降低系統表膨脹速度) 勾選後,實際運行時,将自動嘗試新建「gpfdist_temp」模式并使用 |
臨時文件條數限制 | 默認值:100000;範圍:10000~100000000;必填 落盤的臨時文件條數;配置值可根據用戶環境的磁盤大小、網絡速率調整 |
臨時文件大小限制(MB) | 默認值:1024;範圍:10~102400;必填 落盤的文件大小限制;滿足條數與文件大小任一限制時,停止數據文件寫入操作,立即進行文件裝載 |
4.1.14.1 及之後版本,新增 SocketTimeout 設置項。如下圖所示:
該設置項應用場景:
在網絡發生抖動時,可能會出現管道&定時任務發出查詢後,無限等待返回數據的問題,用戶運維時,看不到報錯,但實際任務已不再同步數據。
配置該設置項後,将控制查詢在一個合理的範圍内,達到套接字超時時間後,SQL 語句會自動中斷報錯,避免出現無限等待的問題。
值說明:
配置當前數據連接的套接字超時,單位爲秒,默認值爲 3600。
輸入框要求爲非負整數,配置爲 0 時,視爲不設置超時。
該設置項控制的功能範圍:
定時任務:對應數據源讀寫、SQL腳本執行、參數賦值、全局賦值參數。
管道任務:對應數據源讀寫。
數據發布:對應數據源查詢。
庫表管理:SQL執行。
5)點擊「測試連接」,連接成功即可保存。
4. 不配置并行裝載設置
使用場景:請仔細查看本文第二章内容。
建立數據連接步驟:與本文第三章不同的是,無需配置「并行裝載設置」項。
5. 使用數據源
數據源在 FineDataLink 中的使用說明,詳情請參見:YMatrix数据源使用说明
定時任務支持讀取和寫入 YMatrix 數據庫。定時任務開發請參見:定时任务概述
數據管道任務中支持寫入至 YMatrix 數據庫。管道任務配置請參見:数据管道概述
數據服務支持 YMatrix 數據庫。數據服務請參見:数据服务概述