1. 概述
1.1 版本
FineDataLink 版本 | 功能變動 |
---|---|
4.0.21 |
|
4.1.3 | 增加 fetchsize 參數配置 |
4.1.5.1 | 新增設定項:空閑連結強制回收臨界值、空閑連結可用性定期檢查時間臨界值 |
4.1.12.3 |
|
1.2 應用場景
FineDataLink 的資料開發、資料管道、資料服務、資料管理模組支援連結多種資料源進行資料的處理操作。
在使用 FineDataLink 處理、同步資料前,您需要先定義資料連結,以便在執行資料處理操作時,透過「資料庫>資料連結名稱>資料表」,來確定資料的讀取和寫入位置。
1.3 功能簡介
本文講解如何在 FDL 中配置資料連結和管理資料連結。
2. 建立資料連結
2.1 前提條件
詳情請參見:前提條件
2.2 步驟說明
1)管理者進入 FDL 工程,點選「管理系統>資料連結管理」頁面。點選「建立>資料夾」,可以使用資料夾對資料連結進行分類管理。如下圖所示:
注:資料夾名稱不可為空,不可重名,不能超過 60 個字元;只可建立一級資料夾。
在某資料夾中建立資料連結。如下圖所示:
2)輸入資料連結名稱後,選擇資料庫類型,點選「下一步」按鈕。
可透過搜尋資料庫名稱來快速選擇資料庫類型;也可透過資料源分類、支援形式、適配模組來篩選資料庫類型。
注:所有資料夾下的資料連結名稱,均不能重名。
滑鼠懸浮在資料名稱右側的問號標識上,可顯示該資料源適配的模組。如下圖所示:
3)輸入資料庫的相關資訊。如下圖所示:
以下為資料連結資訊的詳細解譯,不同資料庫要設定的連結資訊不同。
每個資料庫的資料連結設定項請在 FDL 說明文檔中搜尋查看(範例:配置Oracle資料源)。
配置 | 介紹 |
---|---|
資料連結名稱 | 給這個資料連結一個名稱,按使用者自己的習慣起名即可 |
驅動 | 連結資料庫所需要的驅動:
|
資料庫名稱 | 輸入要連結的資料庫的名稱 |
主機 | 輸入資料庫所在主機(或伺服器)的 IP |
埠 | 輸入資料庫所在主機(或伺服器)的埠 |
認證方式 | 若資料庫支援多種認證方式,則點選會出現認證方式下拉框:
|
編碼 | 推薦使用預設 |
模式 |
注:需要正確選擇資料庫對應的模式,否則會導緻新增資料庫表時顯示「當前資料連結中無可用表」,只能透過 SQL 資料集進行取數 |
資料連結URL | 自動生成的 URL ,無需特意配置 |
點選「測試連結」,即可測試是否可以連結成功。
若使用者不需要設定連結池,即可點選「儲存」。完成資料連結配置。
2.3 連結池設定
在連結資料庫時,可能需要進行一些進階設定,但大部分情況下是不需要設定的。
我們可以根據需要選擇性設定,如下圖所示:
2.3.1 進階設定
名稱 | druid學名 | 預設值 | 含義 |
---|---|---|---|
最大活動連結數 | maxActive | 50 | 連結池在同一時間能夠分配的最大活動連結的數量 |
校驗語句 | validationQuery | 預設語句 | 用來檢查連結是否有效的 SQL 語句,要求是一個查詢語句,常用select 'x' 。使用者可自訂該語句。 |
獲取連結前檢驗 | testOnBorrow | 是 | 申請連結時執行 validationQuery 檢查連結是否有效 |
最大等待時間 | maxWait | 10000 | 獲取連結時最大等待時間,單位毫秒 注:值設定為 0 不代表永不逾時,根據實際情況設定值的大小 |
2.3.2 更多設定(不常用,如無特殊場景不建議修改)
名稱 | druid學名 | 預設值 | 含義 |
---|---|---|---|
初始化連結數 | initialSize | 0 | 初始化時建立物理連結的個數 |
最小空閑連結數 | minIdle | 0 | 連結池最小連結數量 |
歸還連結前校驗 | testOnReturn | 否 | 歸還連結時執行validationQuery檢查連結是否有效 |
開啟空閑回收器校驗 | testWhileIdle | 否 | 指明連結是否被空閑連結回收器(如果有)進行檢驗,如果檢查失敗,則連結將被從池中去除 |
空閑連結回收器休眠時間 | timeBetweenEvictionRunsMillis | -1 | 在空閑連結回收器執行緒運作期間休眠的時間值,以毫秒為單位 |
空閑連結回收檢查數 | numTestPerEvictionRun | 3 | 在每次空閑連結回收器執行緒(如果有)運作時檢查的連結數量 |
保持空閑最小時間值 | minEvictableIdleTimeMillis | 1800s | 連結保持空閑而不被驅逐的最小時間 某資料連結空閑時間若超過保持空閑最小時間值,檢查 |
空閑連結強制回收臨界值 | maxEvictableIdleTimeMillis | 25200s 也就是7小時 | 若資料連結空閑時間超過該值,該資料連結將從連結池移除 |
空閑連結可用性定期檢查時間臨界值 | keepAliveBetweenTimeMillis | 80000ms 也就是80s | 空閑連結的保持存活時間,可以確定在空閑一段時間後連結不會被意外關閉 |
fetchSize 設定
fetchSize 參數是用於控制從資料庫中獲取資料的成批處理大小的設定。較小的 fetchSize 值會減少每次資料庫查詢的記憶體消耗,但可能需要更多的資料庫往返來獲取完整的結果集;較大的 fetchSize 值可以減少資料庫往返次數,但會增加記憶體使用量。可以根據你的需求透過設定 fetchSize 參數值,來優化資料庫查詢效能。
若參數值 ≤ 0(例如:-20)則表示不開啟 fetchSize 參數。
1)Oracle、DB2、Postgre 這三種資料庫必須設定 fetchSize 參數,所以若設定了≤0 的參數值,會自動分別被更換為 128、50、10000。
2)其他資料庫預設情況下不開啟 fetchSize 參數。
3)若為空則表明不配置此項參數。
2.3.3 SSH 設定
若使用者安全性要求高,需要使用 SSH 。可以直接勾選「使用SSH通道」,輸入對應資訊。
注:驗證方法支援密碼和公用鍵,其中選擇「公用鍵」需要將檔案放置在 %FineDataLink%/webapps/webroot/WEB-INF/resources 下。
點選「測試連結」,若提示連結成功,點選「儲存」儲存該配置。
2.3.4 SSL 設定
注:暫只支援 MySQL 資料庫
1)在%FineDataLink%/webapps/webroot/WEB-INF/resources/certificates 中put 命令 CA 憑證、用戶端憑證以及用戶端金鑰,如下圖所示:
2)勾選「使用SSL通道」,將檔案新增進對應位置。如下圖所示:
3)點選「測試連結」,若連結成功點選「儲存」儲存該配置。
3. 管理資料連結
3.1 單個資料連結管理
資料連結建立成功後,介面如下圖所示:
注:使用者建立的資料夾、資料連結,預設具備使用和管理權限。
滑鼠懸浮在資料連結名稱右側,可對資料連結做編輯、重新命名、複制、刪除、測試連結操作。如下圖所示:
「資料連結管理」各設定項說明如下表所示:
設定項 | 說明 |
---|---|
測試連結 | 測試資料庫配置是否成功 |
編輯 | 修改資料連結配置項 |
重新命名 | 重新命名該資料庫,不可重名,不可為空 |
複制 | 複制該筆資料庫,且資料連結名自動加 1 |
刪除 | 刪除該資料庫 |
資料連結資訊 | 顯示資料庫類型和建立者 |
需要注意以下幾點:
未適配的資料庫類型右側不顯示圖示。
在管理資料連結時,資料連結的名稱不能隨意改動。更新到本地的表與資料庫匹配依靠的是資料連結的名稱,如果修改資料連結的名稱,從該連結中取出的表將無法再更新。
如果是 SQL 資料集,也會導緻沒有「修改 SQL」的按鈕。
如果更新本地儲存的表中的資料庫,例如由開發環境變化到生産環境,表名與表結構均一緻時,只需要修改資料連結的 URL 即可。本地儲存的表依照資料連結名依然可以更新資料。
3.2 資料夾管理資料連結
1)點選資料夾或根目錄,可透過資料連結名稱(不區分字母大小寫,支援模糊搜尋)、資料源類型(可多選,為表格中已有的資料源類型)、建立人(可多選,為表格中已有建立人)搜尋資料連結。如下圖所示:
「活動連結數」和「空閑連結數」的說明如下表所示:
連結池狀態 | 說明 |
---|---|
活動連結數 | 連結池最大可建立的連結數,若最大連結數是 10 ,程式已申請 10 個連結,而且一直在使用,第 11 個連結申請時報錯:active 10 maxActive 10 |
空閑連結數 | 當前處於空閑狀態的連結, 隨時會轉成活動連結, 空閑狀態超過最大空閑連結時間時自動釋放 活動連結數+空閑連結數=實際物理連結數 |
2)可對資料夾進行重新命名、刪除操作。如下圖所示:
資料夾下存在資料連結時,不支援刪除該資料夾。
3)可將資料連結從 A 資料夾中拖曳到 B 資料夾中;資料夾不支援拖曳到另外一個資料夾中,最多支援一層資料夾。
3.3 資料連結逾時檢查
在「資料連結管理>全局設定」中,提供「資料連結逾時檢查」功能,支援使用者自訂資料連結的逾時時間。
資料連結逾時時,報錯「31300010 kdc伺服器不連通」,可手動調大逾時時間。