MaxCompute輸出組件用於向MaxCompute資料來源寫入資料。同步其他資料來源的資料至MaxCompute資料來源的情境中,完成來源資料源的資訊配置後,需要配置MaxCompute輸出組件寫入資料到目標資料來源。本文為您介紹如何配置MaxCompute輸出組件。
操作步驟
在Dataphin首頁頂部功能表列,選擇研發 > Data Integration。
在整合頁面頂部功能表列選擇專案(Dev-Prod模式需要選擇環境)。
在左側導覽列中單擊離線整合,在離線整合列表中單擊需要開發的離線管道,開啟該離線管道的配置頁面。
單擊頁面右上方的組件庫,開啟組件庫面板。
在組件庫面板左側導覽列中需選擇輸出,在右側的輸出組件列表中找到MaxCompute組件,並拖動該組件至畫布。
單擊並拖動目標輸入組件的
表徵圖,將其串連至當前MaxCompute輸出組件上。單擊MaxCompute輸出組件卡片中的
表徵圖,開啟MaxCompute輸出配置對話方塊。
在MaxCompute輸出配置對話方塊,配置參數。
參數
描述
基本設定
步驟名稱
即MaxCompute輸出組件的名稱。Dataphin自動產生步驟名稱,您也可以根據業務情境修改。命名規則如下:
只能包含中文、字母、底線(_)、數字。
不能超過64個字元。
資料來源
在資料來源下拉式清單中,展示所有MaxCompute類型的資料來源,包括您已擁有同步寫入權限的資料來源和沒有同步寫入權限的資料來源。單擊
表徵圖,可複製當前資料來源名稱。對於沒有同步寫入權限的資料來源,您可以單擊資料來源後的申請,申請資料來源的同步寫入權限。具體操作,請參見申請、續期和交還資料來源許可權。
如果您還沒有MaxCompute類型的資料來源,單擊建立資料來源,建立資料來源。具體操作,請參見建立MaxCompute資料來源。
表
選擇資料同步中輸出資料的目標表。如果MaxCompute資料來源中沒有資料同步的目標表,則您可以通過一鍵產生目標表的功能,簡單快速地產生目標表。詳細的操作步驟如下:
單擊一鍵建表。
可選擇普通表或Delta表,預設為普通表。切換表格式後將更改下方代碼地區中的DDL。
Dataphin會自動為您匹配建立目標表的代碼,包括目標表名稱(預設為來源表名)、欄位類型(基於Dataphin欄位做了初步的轉換)等資訊。您可以根據業務情況修改建立目標表的SQL指令碼後,單擊建立。目標表建立成功後,Dataphin自動將建立的目標表作為輸出資料的目標表。
生產表缺失策略
生產表不存在時的處理策略,可選擇不處理或自動建立,預設為自動建立。若選擇不處理,則任務發布時不進行生產表建立;若選擇自動建立,則任務發布時在目標環境建立同名表。
不處理:若目標表不存在,則提交時會提示目標表不存在,但仍可正常發布。此時,使用者需自行在生產環境建立目標表,才可執行任務。
自動建立:需編輯建表語句,預設填充所選表的建表語句,使用者可進行調整。建表語句中的表名使用預留位置
${table_name},且僅支援填寫該預留位置,實際執行時將替換為真實表名。若目標表不存在,則先按照建表語句進行建表,若建表失敗,則發布時檢查結果為失敗,您可根據錯誤提示修改建表語句,修改完成後再次進行發布。若目標表已存在,則不執行建表。
說明僅Dev-Prod模式專案中支援配置此項。
載入策略
向目標資料來源(MaxCompute資料來源)寫入資料時,資料寫入表中的策略。載入策略包括覆蓋資料和追加資料,適用情境說明如下:
覆蓋資料:以當前來源表為準,覆蓋目標表中的歷史資料。
追加資料:在目標表的已有的資料基礎上追加資料,且不修改歷史資料,僅普通表可用。
更新資料:當主鍵衝突時,會在已存在的記錄上更新映射欄位的資料,僅Delta表可用。
分區
如果選擇了分區表,則需要填寫資料表的分區。例如
ds=20230101或使用參數ds=${bizdate}。支援在分區前加
/*dynamic*/關鍵字以使用來源欄位動態指定每行資料的寫入分區。例如,/*dynamic*/ds=$date,date為來源欄位名稱; 或/*dynamic*/ds=${bizdate},hh = $hour,bizdate為參數,hour為來源表欄位名稱。重要動態分區數為上限10000個,建議不超過1000個,否則會導致執行時間過長甚至失敗。
準備語句(非必填)
資料匯入前對資料庫執行的SQL指令碼。
比如為了滿足服務的持續可用性,當前步驟寫資料執行前先建立目標表Target_A,執行寫入到目標表Target_A,當前步驟寫資料執行完成後,對資料庫中持續提供服務的表Service_B重新命名成Temp_C,然後將表Target_A重新命名為Service_B,最後刪除Temp_C。
結束語句(非必填)
資料匯入後對資料庫執行的SQL指令碼。
欄位對應
輸入欄位
根據上遊組件的輸出,為您展示輸入欄位。
輸出欄位
輸出欄位地區展示了已選中表的所有欄位。如果不需要將某些欄位輸出至下遊組件,則您可以刪除對應的欄位:
如果需要刪除少量的欄位,可以單擊操作列下的
表徵圖,刪除多餘的欄位。如果需要刪除大批量欄位,可以單擊欄位管理,在欄位管理頁面選擇多個欄位後,單擊
表徵圖,將已選的輸入欄位移入到未選的輸入欄位。
映射關係
映射關係用於將源表的輸入欄位和目標表的輸出欄位進行映射。映射關係包括同名映射和同行映射。適用情境說明如下:
同名映射:對欄位名稱相同的欄位進行映射。
同行映射:源表和目標表的欄位名稱不一致,但欄位對應行的資料需要映射。只映射同行的欄位。
單擊確認,完成MaxCompute輸出組件的屬性配置。