本文為您介紹歸併節點的概念,以及如何建立歸併節點、定義歸併邏輯,並通過實踐案例為您展示歸併節點的調度配置和運行詳情。
節點介紹
歸併節點是Data Studio中提供的邏輯控制系列節點中的一類,可以對上遊節點的運行狀態進行歸併,用於解決分支節點下遊節點的依賴掛載和運行觸發問題。
目前歸併節點的邏輯定義不支援選擇節點運行狀態,僅支援將分支節點的多個下遊節點歸併為運行成功的狀態,以便下遊節點能夠直接掛載歸併節點作為依賴。
例如,分支節點C定義了兩個邏輯互斥的分支走向C1和C2,不同分支使用不同的邏輯寫入同一張MaxCompute表,如果下遊節點B依賴此MaxCompute表的產出,則必須使用歸併節點J先將分支歸併後,再把歸併節點J作為B的上遊依賴。如果直接把B掛載在C1、C2下,任何時刻,C1和C2總有一個會因分支條件不滿足,而顯示執行個體狀態為分支未被選中,而B也會因為上遊有未被選中跳過啟動並執行節點,實際也會是分支未被選中,空跑跳過的狀態,節點並沒有實際運行,所有下遊節點均會如此。
前提條件
RAM帳號添加至對應空間(可選)。
進行任務開發的RAM帳號已被添加至對應工作空間中,並具有開發或空間管理員(許可權較大,謹慎添加)角色許可權。新增成員並授權,詳情請參見為工作空間增加空間成員。
對應空間已綁定Serverless資源群組。詳情請參見:使用Serverless資源群組。
進行歸併節點開發前,需建立對應的歸併節點,詳情請參見:建立周期任務。
注意事項
僅DataWorks標準版及以上版本,才可使用歸併節點功能。購買或升級DataWorks相應版本,詳情請參見DataWorks各版本功能詳情。
步驟一:開發歸併節點
建立歸併節點後,需進入歸併節點編輯頁面定義歸併邏輯,歸併邏輯定義配置詳情如下:
在歸併邏輯定義處對需要進行歸併的節點進行搜尋並添加,可通過節點輸出、節點ID、節點名稱三種方式進行搜尋分支節點。
搜尋到需要歸併的節點後,單擊
標按將節點,添加至歸併條件設定。說明當需要歸併多個分支節點時,您需多次重複執行添加操作。
在歸併條件設定地區,配置分支節點的歸併條件。
歸併邏輯條件包括:
且:上遊所有分支節點均需處於終態(即運行完成),並且均滿足其設定的運行狀態時,執行結果設定地區設定的本節點運行狀態才會生效。
或:上遊所有節點均需處於終態(即運行完成),並且任意分支節點滿足其設定的運行狀態時,執行結果設定地區設定的本節點運行狀態才會生效。
節點運行完成後的狀態包括:
成功:節點運行成功。
失敗:節點運行失敗。
分支未運行:節點未被選中,處於運行成功但不真實執行任務的空跑狀態。
說明僅當上遊為分支節點時,選擇該狀態才會生效。
在執行結果設定地區,設定本節點的運行狀態。
說明當前僅支援設定本節點的運行狀態為成功。

以上圖為例:
添加節點
分支1、分支2為當前歸併節點的上遊節點。節點
分支1的運行狀態設定為成功、分支未運行、失敗,即節點分支1運行完成即可。節點
分支2的運行狀態設定為成功、分支未運行,即節點分支2運行完成且節點B運行未失敗。歸併邏輯條件設定為且。
當節點
分支1運行完成,並且分支2運行完成且不失敗,當前歸併節點的成功運行狀態才會生效。完成歸併節點開發後,單擊節點編輯頁面右側的調度配置,即可設定歸併節點的調度屬性,詳情請參見節點調度。