1)無論是否配置「並行裝載設定」項,在進行資料開發時,要注意大小寫規範,最好是統一為大寫格式,否則會出現報錯;比如在進行資料查詢時,將查詢內容統一大小寫或者將查詢內容加引號。
2)在 Greenplum 資料庫中,欄位名的長度限制:
最大 64 個字元;若使用英文字母、數字或底線,最多可支援 64 個字元;若包含中文字元(每個漢字佔 2-4 個字元),實際字元數會減少。
建議使用小寫字母、數字、底線組合來命名;避免以數字開頭或包含特殊字元。
支援定時任務讀取資料庫的分割槽表,如下圖所示:
1)定時任務支援選擇分割槽表作為資料去向,如下圖所示:
2)4.1.9.3 及之後的版本,目標表為自動建表時,支援指定分佈鍵。
3)4.1.9.3 及之後的版本,定時任務自動建表設定主鍵後,點選「分割槽鍵設定」按鈕,支援指定分割槽鍵。如下圖所示:
注:僅支援一級分割槽。
注:5.x、6.x 支援範圍分割槽和列表分割槽;GP7 額外支援哈希分割槽,所有分割槽方式,僅支援一個欄位作為分割槽欄位(GPORCA不支援)。
配置方式參見讀取、建立、寫入分割槽表,有如下差別:
範圍分割槽和列表分割槽分割槽名稱支援為空,為空時按照位置自動取名(相當於不指定名稱,資料庫會自動取名,不需要FDL處理)
範圍分割槽有兩種方式來指定範圍(支援指定包含或不包含)
1)方式一:起始值和結束值必填,在起始結束值都合法的時候,才支援指定間隔,來自動劃分分割槽,舉例:「start (date '2015-01-01') end (date '2020-12-31') every (interval '1 year')」
欄位類型為日期時,間隔支援指定年月日
欄位類型為數字時,間隔支援指定正整數
2)方式二:單獨指定「大於等於XXX」「小於等於XXX」條件
注:方式一和方式二指定的分割槽允許共存。
支援指定預設分割槽。
定時任務中設定資料匯出到 Greenplum 資料庫時。「寫入方式」介面如下圖所示:
1)「裝載方式」介紹如下表所示:
1)gpfdist 預設使用 15500 埠
2)二進制類型欄位不支援在勾選「啟動並行裝載」的時候同步
3)4.1.2 及之後版本,支援寫入 JSON 類型欄位,但仍不支援寫入二進制欄位
4)4.1.2 及之後版本,主鍵衝突策略可選擇:主鍵相同,忽略輸入源的資料、主鍵相同,記錄為髒資料、主鍵相同,改寫目標表的資料
5)開啟 髒資料容忍 後,並行裝載方式失敗後,需要透過 GPLOAD 內建錯誤表邏輯,獲取到髒資料資訊,正確記錄髒資料;如果沒有開啟髒資料容忍,則節點直接報錯
6)以 gpfdist 協定做並行裝載,4.1.2 之前版本不支援插入/更新/刪除資料寫入方式,4.1.2 及之後版本支援該寫入方式
7)並行裝載在大數據量、大規模叢集場景下效能優於 COPY
8)配置資料連結時需按照 配置並行裝載設定 步驟操作,配置並行裝載設定
注:若選擇並行裝載方式,需要進行權限指定。
若選擇 COPY 裝載方式,需要在目標資料庫先建立 fdl_temp 模式用來存放臨時表,需要使用者有建表、建指定模式的權限(如果已由 DBA 建好模式並賦權,資料庫使用者可不需要建schema的權限)
選擇該方式時,支援寫入二進制欄位、JSON 欄位
1)目標表無主鍵且未配置「主鍵映射」時,使用 COPY 裝載方式
2)目標表有主鍵或配置「主鍵映射」後,支援三種主鍵衝突策略:主鍵相同,忽略輸入源的資料、主鍵相同,記錄為髒資料、主鍵相同,改寫目標表的資料;三種主鍵衝突策略,採用COPY裝載方式+普通裝載方式
採用COPY裝載方式+普通裝載方式時:
COPY 裝載方式失敗後,需要嘗試將該批資料使用「普通裝載」寫入,寫入異常將統計進入髒資料,當前這一批資料寫完後,下一批繼續優先嚐試使用 COPY 進行裝載
1)向 GreenPlum 寫入資料時,不建議選擇該方式
2)若只從 GreenPlum 讀取資料,建議按照 不配置並行裝載設定 步驟配置資料連結
定時任務中特殊場景說明:
一批資料中多條源端資料,更新目標端的一筆資料,不知道要用哪條更新,造成裝載異常
情況一:如果使用者同步的欄位中沒有二進制欄位,可以考慮使用GP並行裝載
情況二:如果使用者同步的欄位中有二進制欄位,目前只能接受此問題
2)4.2.7.4 及之後版本,目標端為 GreenPlum 時,支援 交易控制 功能。
1)4.1.1 及之後版本,Greenplum 資料源作為目標表,支援 無主鍵同步
2)資料管道任務中支援寫入至 Greenplum 資料庫。管道任務配置請參見:資料管道概述
3)4.1.9.3 及之後的版本,管道任務自動建表支援指定分割槽鍵。如下圖所示:
4)管道任務目標端為 Greenplum 時,若目標表為手動建立的且包含時間戳欄位(記錄資料在資料庫中實際新增和更新的時間),需要給時間戳欄位設定個預設值:((EXTRACT(EPOCH FROM CURRENT_TIMESTAMP) * 1000)::bigint),否則增量後時間戳欄位會為空。
5)4.0.29 及之後版本,Greenplum、Greenplum(並行裝載)作為目標端同步優化:當資料透過COPY裝載失敗時,重新使用JDBC裝載,重新裝載再失敗時,識別為髒資料,並正常記錄,以保證資料正常。
6)資料管道使用 Greenplum 或者 Greenplum(並行裝載)作為目標表時,都是用的 COPY 裝載模式,需要在目標資料庫先建立 fdl_temp 模式用來存放臨時表,因此需要給該資料連結帳號賦予在對應資料庫建立模式的權限。詳情參見:配置Greenplum資料源
資料服務支援 Greenplum 資料庫,但需要配置「並行裝載設定」項。資料服務請參見:資料服務概述
4.1.9.3 及之後的版本,資料服務支援選擇分割槽表作為資料來源,如下圖所示:
1)4.2.19.3 及之後版本,定時管道支援寫入該資料庫。
2)4.2.20.1 及之後版本,配置定時管道任務&Greenplum作為目標端時,支援開啟「同步源表結構變化」按鈕,詳情請參見:自動同步
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙