For Each
更新時間 2023-07-18 22:10:37
最近更新時間: 2023-07-18 22:10:37
分享文章
本章節主要介紹節點參考的 For Each。
功能
該節點可以指定一個子作業循環執行,并支持用一個數據集對子作業中的變量進行循環替換。
參數
用戶可參考下表配置For Each節點的參數。
屬性參數
| 參數 | 是否必選 | 說明 |
|---|---|---|
| 節點名稱 | 是 | 節點名稱,可以包含中文、英文字母、數字、“_”、“-”、“/”、“<”、“>”等各類特殊字符,長度為1~128個字符。 |
| 循環執行的子作業 | 是 | 選擇需要循環執行的子作業。 |
| 數據集 | 是 | For循環算子需要定義一個數據集,這個數據集用來循環替換子作業中的變量,數據集的一行數據會對應一個子作業實例。數據集的來源包括: 來自于上游節點的輸出。例如DLI SQL、Hive SQL、Spark SQL的select語句,或者Shell節點的echo等。使用EL表達式為:#{Job.getNodeOutput('preNodeName')},即前一個節點的輸出值。 來自于給定的數組。如一維數組:[['001'],['002'],['003']] 。 |
| 子作業并發數 | 是 | 循環產生的子作業可以并發執行,您可設置并發數。 |
| 子作業實例名稱后綴 | 否 | For循環生成的子任務名稱:For循環節點名稱 + 下劃線 + 后綴。后綴可配置,如果不配置,則按照數字順序依次遞增。 |
| 作業運行參數 | 否 | 僅當子作業配置作業參數后,出現該參數。 節點屬性中子作業參數配置為空時,子作業使用自身參數變量執行。 節點屬性中子作業參數配置后,將使用配置參數變量執行。節點屬性中子作業參數配置的方法或者EL表達式,將根據父作業的環境變量讀取替換。 |
高級參數
| 參數 | 是否必選 | 說明 |
|---|---|---|
| 節點執行的最長時間 | 是 | 設置節點執行的超時時間,如果節點配置了重試,在超時時間內未執行完成,該節點將不會再重試,直接置為失敗狀態。 |
| 失敗重試 | 是 | 節點執行失敗后,是否重新執行節點。 是:重新執行節點,請配置以下參數。 ? 最大重試次數 ? 重試間隔時間(秒) 否:默認值,不重新執行節點。 說明 如果作業節點配置了重試,并且配置了超時時間,該節點執行超時后將不會再重試,直接置為失敗狀態。 |
| 失敗策略 | 是 | 節點執行失敗后的操作: 終止當前作業執行計劃:停止當前作業運行,當前作業實例狀態顯示為“失敗”。 繼續執行下一節點:忽略當前節點失敗,當前作業實例狀態顯示為“忽略失敗成功”。 掛起當前作業執行計劃:暫停當前作業運行,當前作業實例狀態顯示為“等待運行”。 終止后續節點執行計劃:停止后續節點的運行,當前作業實例狀態顯示為“失敗”。 |
| 空跑 | 否 | 如果勾選了空跑,該節點不會實際執行,將直接返回成功。 |