在E-MapReduce資料開發專案中,您可以在作業編輯中定義一組有依賴的作業,然後建立工作流程,使作業按照依賴依次執行。E-MapReduce工作流程支援基於有向非循環圖(DAG)並存執行巨量資料作業,您可以通過E-MapReduce控制台管控工作流程調度以及查看工作流程的執行狀態。
背景資訊
前提條件
建立工作流程
通過以下步驟,可以建立工作流程。
- 進入資料開發的專案列表頁面。
- 通過阿里雲帳號登入阿里雲E-MapReduce控制台。
- 在頂部功能表列處,根據實際情況選擇地區和資源群組。
- 單擊上方的資料開發頁簽。
- 在專案列表頁面,單擊目標專案右側的工作流程設計。
- 建立工作流程。
- 在工作流程設計地區,在需要操作的檔案夾上單擊右鍵,選擇建立工作流程。
- 在建立工作流程對話方塊中,填寫工作流程名稱和工作流程描述,選擇資源群組和執行叢集。
- 單擊確定。工作流程建立成功後,就可以進行工作流程編輯和配置等操作。
編輯工作流程
- 在工作流程編輯畫布上,根據業務情況拖拽作業節點到畫布上。每個作業節點被拖入畫布後,在節點編輯面板可以做如下配置。
配置項 描述 關聯作業 需要關聯對應作業類型的作業。 自訂作業配置 根據業務情況開啟或者關閉自訂作業配置。 - 開啟:您可以選擇該作業節點的執行叢集。
- 關閉(預設):該作業節點的任務會下發到在工作流程的執行叢集上。
- 設定作業間的依賴關係。按照作業間的依賴關係,從每個作業節點底部中心拖拽出連線對作業節點進行關聯,其中箭頭所指方向為工作流程的運行方向。
- 設定控制節點,完成整個工作流程的設計。從控制節點地區拖拽END節點到畫布,將START節點與工作流程開始的作業節點關聯,END節點與工作流程結束的作業節點關聯,完成整個工作流程的設計。您可以單擊右上方自動布局,調整工作流程節點的展示。
在編輯工作流程時,您可以單擊右上方的上鎖來為工作流程加上編輯鎖,此時只有您可以編輯,其他專案成員無法編輯和運行該工作流程。只有解鎖之後,專案中其他成員才可以編輯該作業。說明 上鎖之後,只有上鎖的成員和阿里雲帳號能夠解鎖。
配置工作流程調度
您可以開啟工作流程調度配置面板,配置工作流程調度參數,調度系統會按照參數定時運行相關工作流程,並將作業下發到指定叢集上執行。以下介紹如何配置工作流程的基本屬性、調度屬性和警示設定。
- 進入資料開發的專案列表頁面。
- 通過阿里雲帳號登入阿里雲E-MapReduce控制台。
- 在頂部功能表列處,根據實際情況選擇地區和資源群組。
- 單擊上方的資料開發頁簽。
- 在專案列表頁面,單擊目標專案右側的工作流程設計。
- 在右側工作流程地區,單擊配置。
- 在工作流程調度配置面板的基本屬性頁簽下,您可以修改工作流程描述,選擇資源群組和執行叢集。
- 在工作流程調度配置面板,單擊調度屬性頁簽,設定工作流程的調度屬性。
配置項 說明 調度狀態 支援的調度狀態如下: - 啟動:可以啟動工作流程調度。調度開啟後,工作流程編輯畫布上方會出現調度中的狀態提示。
- 停止:調度狀態為停止。
時間屬性調度 開始時間 工作流程調度的開始時間。 結束時間 可選,工作流程調度的結束時間。 調度周期 工作流程調度的周期。 CRON運算式 工作流程調度周期的CRON運算式。 依賴調度屬性 所屬專案 可選,當前工作流程的前序工作流程所屬的專案。 依賴工作流程 可選,當前工作流程的前序工作流程,即前序工作流程執行完成後,當前工作流程才會被調度執行。 - 在工作流程調度配置面板,單擊警示設定頁簽,設定工作流程的警示配置項。
配置項 說明 執行失敗 設定工作流程執行失敗時,是否通知到使用者警示組或DingTalk警示組。 節點失敗 設定工作流程節點執行失敗時,是否通知到使用者警示組或DingTalk警示組。 執行成功 設定工作流程執行成功時,是否通知到使用者警示組或DingTalk警示組。 啟動逾時 設定如果工作流程中有節點在下發到叢集後30分鐘內還沒有啟動時,是否通知到使用者警示組或DingTalk警示組。 節點執行逾時 設定如果節點執行時間長度超過作業配置裡的預期最大運行時間長度時,是否通知到使用者警示組或DingTalk警示組。
執行工作流程
您也可以指定工作流程的業務時間,此時工作流程作業中的時間相關變數將使用指定的業務時間進行計算,一般用於重跑某個時間段的工作流程執行個體,可以設定單次重跑或批量重跑。如果您的作業中沒有任何時間相關變數,可以選擇在目前時間立即執行,即可運行工作流程。
- 進入資料開發的專案列表頁面。
- 通過阿里雲帳號登入阿里雲E-MapReduce控制台。
- 在頂部功能表列處,根據實際情況選擇地區和資源群組。
- 單擊上方的資料開發頁簽。
- 在專案列表頁面,單擊目標專案右側的工作流程設計。
- 運行工作流程。
- 在工作流程設計頁面,單擊運行。
- 在運行工作流程對話方塊中,配置相關運行資訊。您可以根據業務情況,選擇運行方式。支援的運行方式有立即執行和設定時間調度運行,兩種運行方式的具體情況如下表。
運行方式 說明 立即執行 立即運行一個工作流程,可以將指定已耗用時間作為本工作流程的業務時間,時間相關的變數將使用該時間進行計算。 設定時間調度運行 立即運行一批工作流程,將指定調度規則的觸發時間作為本工作流程的業務時間,時間相關的變數將使用該時間進行計算。一次最多支援100個觸發點。您需要設定的資訊如下: - 開始時間:工作流程調度的開始時間。
- 結束時間:可選,工作流程調度的結束時間。
- 調度周期:工作流程調度的周期。
- CRON運算式:設定調度周期後的CRON運算式。
- 跳過成功節點:您可以根據業務情況選擇是否開啟跳過成功節點。開啟該開關後,如果某個業務時間對應的工作流程執行個體是成功的,將會跳過該業務時間的執行個體,繼續運行其他業務時間的工作流程執行個體。
- 單擊確定。
查看工作流程運行記錄
運行工作流程後,可通過以下步驟查看工作流程運行記錄。
- 在工作流程設計頁面,單擊下方運行記錄頁簽。您可以查看工作流程執行個體的運行狀態。
- 單擊工作流程執行個體所在行的詳情,跳轉至營運中心。
您可以查看工作流程執行個體的詳細情況,也可以暫停、恢複、停止和重跑工作流程執行個體,詳情請參見營運中心。
功能 說明 詳情 查看工作流程執行個體的詳細資料,包括工作流程節點執行個體的詳細資料和運行狀態。 停止工作流程 終止正在啟動並執行工作流程執行個體,所有正在啟動並執行作業節點立即停止。 暫停工作流程 暫停正在啟動並執行工作流程執行個體,正在啟動並執行作業節點會繼續執行,但後續的作業節點不再執行。 恢複工作流程 恢複已被暫停工作流程執行個體。 重跑工作流程執行個體 重新運行已經結束的工作流程執行個體。單擊重跑工作流程執行個體後,可以選擇只重試失敗節點,也可以從頭重跑所有節點。
工作流程可執行操作
在工作流程設計地區,您可以在工作流程名稱上單擊右鍵,執行如下操作。
| 操作 | 說明 |
| 複製工作流程 | 在同一檔案夾下複製出相同圖形的工作流程。 說明 工作流程的調度參數目前無法複製。 |
| 重新命名工作流程 | 重新命名工作流程的名稱。 |
| 刪除工作流程 | 刪除工作流程。當工作流程在運行狀態時無法刪除。 |