本文為您介紹什麼是節點成環,以及節點成環的原因及解決方案。
什麼是節點成環?
節點成環指的是某節點為上遊節點但又同時依賴了自己的下遊節點,導致依賴關係成環,這類型節點在自動調度時不會被調起。生產環境若出現成環節點會自動警示,成環節點警示機制,詳情請參見成環節點的監控警示。
節點成環產生原因與解決方案
當某節點為上遊節點但又同時依賴了自己的下遊節點,導致依賴關係成環,您需要分析商務程序,及時去除成環依賴。
例如,當下遊節點依賴某上遊節點上一周期產出的表資料,並且將加工結果寫回該表時,若下遊節點依賴上遊節點同周期而非上一周期時,將導致上下遊節點依賴關係成環。請明確業務情境後,將下遊節點從依賴上遊同周期轉變為依賴上一周期。
情境樣本:如下圖情境,若上遊節點A查詢表C資料併產出表A資料,下遊節點B對錶A資料進行清洗寫入表B,緊接著節點C對錶B資料進行清洗又重新寫回表C,這種情況下自動解析會產生環。
解決方案:分析商務程序,去除成環依賴。如下圖案例,如果下遊表要對上遊表上周期資料進行清洗,則設定下跨周期,A節點應該跨周期依賴C節點。
成環節點的監控警示
為保障周期任務可以正常產生周期執行個體並且自動調度運行,DataWorks內建了警示規則來對周期任務進行定期監控掃描,如有異常便會自動警示。節點成環後會自動警示,如果收到節點成環警示請及時處理。
說明
DataWorks每天定時9點、12點、16點、20點和22點對周期任務狀態進行掃描,如有異常將會自動發送警示。掃描時間點前10分鐘內產生的異常不會納入本次掃描,該異常將會被納入下一個周期的任務狀態進行掃描。
節點成環警示為系統內建警示規則,您無須手動建立,預設以簡訊、郵件的方式警示給節點責任人。但您可以在規則管理頁面中針對全域規則修改警示接收人,詳情請參見規則管理。