1. 概述
1.1 版本
FineDataLink 版本 | 功能變動 |
---|---|
4.0.4 |
|
4.0.14 | 部署包內建GP(並行裝載)的gpfdist檔案 |
4.0.15 | 資料管道匯出適配 Greenplum、Greenplum(並行裝載) |
4.0.20.1 | 資料服務適配Greenplum(包含並行裝載) |
4.0.29 | 建立資料連結時,GreenPlum(並行裝載)和Pivotal Greenplum Database資料源,合併為Pivotal Greenplum Database |
4.1.2 |
|
4.1.11.4 | 實時任務支援寫入 Greenplum |
4.1.14.1 | 資料連結支援配置套接字逾時(SocketTimeout 設定項中配置),控制資料庫查詢時間在一個合理範圍內,避免出現無限等待的問題 |
1.2 功能簡介
定時任務支援讀取和寫入 Greenplum 資料庫。
資料管道任務中支援寫入至 Greenplum 資料庫。
資料服務支援 Greenplum 資料庫。
實時任務支援寫入 Greenplum 資料庫。
2. 配置須知
2.1 管道任務
資料管道使用 GreenPlum 作為目標表時,都是用的 COPY 裝載模式。
在使用並行裝載資料源前,需要賦予資料連結對應使用者指定權限。
1)可以賦予資料連結帳號在對應資料庫建立模式的權限。
2)在目標資料庫先建立 fdl_temp 模式用來存放臨時表,然後賦予普通使用者這個模式的建表權限即可。
範例命令如下:
2.2 定時任務
若使用者需要使用 GreenPlum 作為寫入端資料源時,支援三種裝載方式:並行裝載、COPY裝載、普通裝載。三種裝載方式差別參見:Greenplum資料源使用說明
2.2.1 並行裝載方式賦權
使用 GreenPlum 作為目標表時,若使用並行裝載模式,則需要進行權限指定。
1)gpfdist_temp 模式下的建表和已有表的讀取權限。
注:若不想設定已有表的讀取權限,也可以將該模式下 ext_gpload_* 和 staging_gpload_* 表刪除,需要先將使用並行裝載的任務關停,移除後只需要有 gpfdist_temp 模式下建表權限即可。
2)建立外部表的權限。
3)目標表的讀取權限,如果要自動建表的話還需要對應庫的建表權限。
2.2.2 COPY 裝載方式賦權
詳情參見本文 2.1 節。
2.3 資料服務
資料服務支援 Greenplum 資料庫,但需要配置「並行裝載設定」項。資料服務請參見:数据服务概述
3. 配置並行裝載設定
使用場景:請仔細查看本文第二章內容。
3.1 前提條件
3.1.1 確認資料庫版本
Greenplum(並行裝載)支援的版本為:5.X 和 6.X 。
3.1.2 確認資料庫資料類型
並行裝載方式不可同步二進制類型欄位,如果選擇了此類欄位進行裝載,則在裝載時報錯(直接丟擲資料庫裝載時報錯),二進制欄位只能透過 JDBC 方式進行裝載,也就是使用本文第三章中的資料連結。
3.1.3 放置 gpfdist 檔案
gpfdist 檔案相關操作及存放位置說明如下表所示:
FDL 工程 | 操作 | gpfdist 檔案位置 |
---|---|---|
1)4.0.14 之前版本 2)使用者的工程是從 4.0.14 之前版本升級到 4.0.21 之前版本 | 參考本節內容 | %FineDataLink%webappswebrootWEB-INF |
使用者的工程是從 4.0.14 之前版本升級到 4.0.21 及之後版本 | %FineDataLink%webappswebrootWEB-INFassist | |
使用者使用 4.0.14 及之後版本的安裝包部署工程 | 驅動已內建;忽略本節內容 |
Linux 系統:
Linux系統:gpfdist_linux.tar.gz
1)下載該壓縮包後,直接將該壓縮包上傳到 Linux 伺服器上,然後解壓到:%FineDataLink%webappswebrootWEB-INFassist下。
注:安裝目錄中不支援包含空格,否則會導致 gpload 讀取不到檔案。
2)將 bin 資料夾中的 gpfdist 檔案與 lib 資料夾放在同一層級上,刪除 bin 資料夾。
3)將 gpfdist_linux 資料夾名稱修改為 gpfdist 。
最終效果如下圖所示:
Windows 系統:
1)獲取安裝包。
在%FineDataLink%webappswebrootWEB-INFassist下面建一個 gpfdist 資料夾,將獲取的包編輯成 exe 後放到資料夾內。
2)檢查資料庫所在伺服器是否能存取到 FDL 工程伺服器的 15500 埠,原因為:FDL 生成了 csv 檔案,資料庫直接讀取 csv 檔案來裝載。
3)檢查建立資料連結的帳號權限已經擁有建立模式和建表的權限。
注:Windows 下 gpfdist 需要基於原始碼再自行編譯 gpfdist.exe 才能使用(Linux 已編譯)。在 Win 版本中,暫不隨整合 gpfdist 相關組件,Linux 版本整合。
注2:最大單行資料大小支援 1M(Win最大支援值),不允許修改。
3.2 建立資料連結步驟
3.2.1 前提條件
詳情請參見:前提條件
3.2.2 上傳驅動
下載驅動包,並將其上傳至 FineDataLink 中,如何上傳詳情可參見:驱动管理
驅動包下載 |
---|
PostgreSQL驅動,請下載最新版 |
3.2.3 配置資料連結
1)管理者登入 FDL 工程,點選「管理系統>資料連結>資料連結管理」,選中某個資料夾後,建立資料連結。如下圖所示:
注:4.0.29 之前版本,資料連結選擇 GreenPlum(並行裝載) 。
2)設定資料連結名稱(可同時修改資料連結所在目錄)。如下圖所示:
3)可根據資料源分類、支援形式、適配模組、資料源名稱篩選資料庫。如下圖所示:
4)輸入連結資訊。驅動選擇「自訂」,並勾選 3.2.2 節上傳的驅動。
模式需要連結資料庫後才可以選擇,所以需要先點選「點選連結資料庫」後,再選擇「模式」。如下圖所示:
若需要向 Greenplum 資料庫寫入資料,需要配置「並行裝載設定」項。如下圖所示:
配置項 | 說明 |
---|---|
伺服器地址-節點1 | 輸入 2.1.3 節 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 中的使用說明,詳情請參見:Greenplum数据源使用说明