在E-MapReduce數據開發項目中,您可以在作業編輯中定義一組有依賴的作業,然后創建工作流,使作業按照依賴依次執行。E-MapReduce工作流支持基于有向無環圖(DAG)并行執行大數據作業,您可以通過E-MapReduce控制臺管控工作流調度以及查看工作流的執行狀態。

背景信息

本文為您提供工作流編輯的相關操作介紹,具體如下:

前提條件

新建工作流

通過以下步驟,可以新建工作流。

  1. 進入數據開發的項目列表頁面。
    1. 通過阿里云賬號登錄阿里云E-MapReduce控制臺
    2. 在頂部菜單欄處,根據實際情況選擇地域和資源組
    3. 單擊上方的數據開發頁簽。
  2. 項目列表頁面,單擊目標項目右側的工作流設計
  3. 新建工作流。
    1. 工作流設計區域,在需要操作的文件夾上單擊右鍵,選擇新建工作流
    2. 新建工作流對話框中,填寫工作流名稱工作流描述,選擇資源組和執行集群。
      在選擇執行集群時,可以做如下選擇:
      • 選擇當前已存在集群:表示工作流執行時,相關任務會下發到該集群中。
      • 選擇集群模板:表示調度系統在工作流啟動時先按模版創建一個集群,然后將作業下發到該集群上執行。在工作流結束后,調度系統會自動釋放該集群,詳情請參見創建集群模板
        說明 選擇當前已存在集群的下拉列表中只會出現當前項目已關聯的集群,如需選擇其他集群,您需要取消項目的關聯集群,詳情請參見項目管理
    3. 單擊確定
      工作流創建成功后,就可以進行工作流編輯和配置等操作。

編輯工作流

  1. 在工作流編輯畫布上,根據業務情況拖拽作業節點到畫布上。
    每個作業節點被拖入畫布后,在節點編輯面板可以做如下配置。
    配置項 描述
    關聯作業 需要關聯對應作業類型的作業。
    自定義作業配置 根據業務情況打開或者關閉自定義作業配置
    • 打開:您可以選擇該作業節點的執行集群
    • 關閉(默認):該作業節點的任務會下發到在工作流的執行集群上。
  2. 設置作業間的依賴關系。
    按照作業間的依賴關系,從每個作業節點底部中心拖拽出連線對作業節點進行關聯,其中箭頭所指方向為工作流的運行方向。
  3. 設置控制節點,完成整個工作流的設計。
    控制節點區域拖拽END節點到畫布,將START節點與工作流開始的作業節點關聯,END節點與工作流結束的作業節點關聯,完成整個工作流的設計。您可以單擊右上角自動布局,調整工作流節點的展示。編輯工作流
    在編輯工作流時,您可以單擊右上角的上鎖來為工作流加上編輯鎖,此時只有您可以編輯,其他項目成員無法編輯和運行該工作流。只有解鎖之后,項目中其他成員才可以編輯該作業。
    說明 上鎖之后,只有上鎖的成員和阿里云賬號能夠解鎖。

配置工作流調度

您可以打開工作流調度配置面板,配置工作流調度參數,調度系統會按照參數定時運行相關工作流,并將作業下發到指定集群上執行。以下介紹如何配置工作流的基本屬性、調度屬性和告警設置。

  1. 進入數據開發的項目列表頁面。
    1. 通過阿里云賬號登錄阿里云E-MapReduce控制臺
    2. 在頂部菜單欄處,根據實際情況選擇地域和資源組
    3. 單擊上方的數據開發頁簽。
  2. 項目列表頁面,單擊目標項目右側的工作流設計
  3. 在右側工作流區域,單擊配置
  4. 工作流調度配置面板的基本屬性頁簽下,您可以修改工作流描述,選擇資源組和執行集群。
  5. 工作流調度配置面板,單擊調度屬性頁簽,設置工作流的調度屬性。
    配置項 說明
    調度狀態 支持的調度狀態如下:
    • 啟動:可以啟動工作流調度。調度開啟后,工作流編輯畫布上方會出現調度中的狀態提示。
    • 停止:調度狀態為停止。
    時間屬性調度 開始時間 工作流調度的開始時間。
    結束時間 可選,工作流調度的結束時間。
    調度周期 工作流調度的周期。
    CRON表達式 工作流調度周期的CRON表達式。
    依賴調度屬性 所屬項目 可選,當前工作流的前序工作流所屬的項目。
    依賴工作流 可選,當前工作流的前序工作流,即前序工作流執行完成后,當前工作流才會被調度執行。
  6. 工作流調度配置面板,單擊告警設置頁簽,設置工作流的告警配置項。
    配置項 說明
    執行失敗 設置工作流執行失敗時,是否通知到用戶告警組或釘釘告警組。
    節點失敗 設置工作流節點執行失敗時,是否通知到用戶告警組或釘釘告警組。
    執行成功 設置工作流執行成功時,是否通知到用戶告警組或釘釘告警組。
    啟動超時 設置如果工作流中有節點在下發到集群后30分鐘內還沒有啟動時,是否通知到用戶告警組或釘釘告警組。
    節點執行超時 設置如果節點執行時長超過作業配置里的預期最大運行時長時,是否通知到用戶告警組或釘釘告警組。

執行工作流

您也可以指定工作流的業務時間,此時工作流作業中的時間相關變量將使用指定的業務時間進行計算,一般用于重跑某個時間段的工作流實例,可以設置單次重跑或批量重跑。如果您的作業中沒有任何時間相關變量,可以選擇在當前時間立即執行,即可運行工作流。

  1. 進入數據開發的項目列表頁面。
    1. 通過阿里云賬號登錄阿里云E-MapReduce控制臺
    2. 在頂部菜單欄處,根據實際情況選擇地域和資源組
    3. 單擊上方的數據開發頁簽。
  2. 項目列表頁面,單擊目標項目右側的工作流設計
  3. 運行工作流。
    1. 工作流設計頁面,單擊運行
    2. 運行工作流對話框中,配置相關運行信息。
      您可以根據業務情況,選擇運行方式。支持的運行方式有立即執行設置時間調度運行,兩種運行方式的具體情況如下表。
      運行方式 說明
      立即執行 立即運行一個工作流,可以將指定運行時間作為本工作流的業務時間,時間相關的變量將使用該時間進行計算。
      設置時間調度運行 立即運行一批工作流,將指定調度規則的觸發時間作為本工作流的業務時間,時間相關的變量將使用該時間進行計算。一次最多支持100個觸發點。您需要設置的信息如下:
      • 開始時間:工作流調度的開始時間。
      • 結束時間:可選,工作流調度的結束時間。
      • 調度周期:工作流調度的周期。
      • CRON表達式:設置調度周期后的CRON表達式。
      • 跳過成功節點:您可以根據業務情況選擇是否打開跳過成功節點。打開該開關后,如果某個業務時間對應的工作流實例是成功的,將會跳過該業務時間的實例,繼續運行其他業務時間的工作流實例。
    3. 單擊確定

查看工作流運行記錄

運行工作流后,可通過以下步驟查看工作流運行記錄。

  1. 工作流設計頁面,單擊下方運行記錄頁簽。
    您可以查看工作流實例的運行狀態。
  2. 單擊工作流實例所在行的詳情,跳轉至運維中心

    您可以查看工作流實例的詳細情況,也可以暫停、恢復、停止和重跑工作流實例,詳情請參見運維中心

    功能 說明
    詳情 查看工作流實例的詳細信息,包括工作流節點實例的詳細信息和運行狀態。
    停止工作流 終止正在運行的工作流實例,所有正在運行的作業節點立即停止。
    暫停工作流 暫停正在運行的工作流實例,正在運行的作業節點會繼續執行,但后續的作業節點不再執行。
    恢復工作流 恢復已被暫停的工作流實例。
    重跑工作流實例 重新運行已經結束的工作流實例。單擊重跑工作流實例后,可以選擇只重試失敗節點,也可以從頭重跑所有節點。

工作流可執行操作

工作流設計區域,您可以在工作流名稱上單擊右鍵,執行如下操作。
操作 說明
克隆工作流 在同一文件夾下克隆出相同圖形的工作流。
說明 工作流的調度參數目前無法克隆。
重命名工作流 重新命名工作流的名稱。
刪除工作流 刪除工作流。當工作流在運行狀態時無法刪除。