在Databricks數據開發中,您可以在項目空間的作業編輯中創建一組有依賴的作業,然后創建工作流,按照依賴次序定義執行順序,Databricks工作流支持基于有向無環(DAG)并行執行大數據作業。
前提條件
通過主賬號登錄阿里云 Databricks控制臺。
已創建集群,具體請參見創建集群。
已創建好需要測試的作業,具體請參見作業提交示例。
新建項目空間
通過以下步驟,可以新建項目空間。
在Databricks控制臺頁面,單機左側導航欄的項目空間。
單機新建項目。
填寫項目名稱、項目描述、單機確定。
新建工作流
通過以下步驟,可以新建工作流。
進入項目空間。
在工作流設計區域,在需要操作的文件夾上單擊右鍵,選擇新建工作流。
填寫工作流名稱、工作流描述、執行集群。
單機確定。
編輯工作流
在工作流畫布上,拖拽不同類型的作業節點到畫布上,并進行節點編輯,選擇相關作業。
根據依賴關系,從節點底部中心可連接到另一節點上部中心。
完成依賴關系后,再添建END組件。
單機畫布上方保存。
在編輯工作流時,可以單機畫布上方上鎖來為未工作流添加編輯鎖,此時只有您可以編輯,其他項目人員無法編輯和運行該工作流。只有解鎖后,項目中其他人員才可以編輯該作業。
配置工作流調度
您可以打開工作流調度開關并配置工作流調度參數,調度系統會按照參數定時運行相關工作流,并將作業下發到指定集群上執行。以下介紹配置工作流的基本屬性、調度屬性和告警設置。
完成工作流設計后,單機畫布右上角配置按鈕,進行相關配置。
配置基本屬性。
配置項
說明
執行集群
工作流中作業默認的運行方法
配置調度屬性。
配置項
說明
調度狀態
啟動或停止工作流調度。開啟后,工作流編輯畫布上方會出現調度中的狀態提示。
時間屬性調度
設置工作流調度的開始時間和調度周期,在此時間范圍內,系統會根據您設置的周期執行工作流。
依賴屬性調度
選擇當前工作流的前續工作流。當前續工作流執行完成后,當前工作流才會被調度執行。
選擇所選項目。
從所選項目中,選擇依賴工作流。
配置告警設置。
配置項
說明
執行失敗
設置工作流執行失敗時,是否通知到用戶告警組或釘釘告警組。
節點失敗
設置工作流節點失敗時,是否通知到用戶告警組或釘釘告警組。
執行成功
設置工作流執行成功時,是否通知到用戶告警組或釘釘告警組。
啟動超時
設置如果工作流中有節點在下發到集群后30分鐘內還沒有啟動時,是否通知到用戶告警組或釘釘告警組。
節點執行超時
設置如果節點執行時長超過作業配置里的預期最大運行時長時,是否通知到用戶告警組或釘釘告警組。
執行工作流
您也可以指定工作流的業務時間,此時工作流作業中的時間相關變量將使用指定的業務時間進行計算,一般用于重跑某個時間段的工作流實例,可以設置單次重跑或批量重跑。如果您的作業中沒有任何時間相關變量,可以選擇在當前時間立即執行,即可運行工作流。
單機項目空間。
在項目列表頁面,進入對應的項目空間。
選擇工作流設計。
單機畫布上方的運行按鈕。
配置相關運行參數。
立即運行:立即運行一個工作流,可以將指定時間作為本工作流的業務時間,時間相關的變量將使用該時間進行計算。
設置時間調度運行:設置開始時間和調度周期。打開跳過成功節點開關時,如果某個業務時間對應的工作流實例是成功的,將會跳過該業務時間的實例,繼續運行其他業務時間失敗的工作流實例。
立即運行一批工作流,設置工作流業務時間的開始時間和調度周期,運行時系統會將指定調度規則的觸發時間作為本工作流的業務時間,時間相關的變量將使用該時間進行計算。一次最多支持100個觸發時間點。
單機確定。
查看工作流運行記錄
運行工作流后,可通過以下步驟查看工作流運行記錄。
在工作流頁面,單機畫布下方運行記錄標簽,可以查看當前工作流的運行記錄、審計日志、版本控制。
單擊工作流實例所在行的詳情,跳轉至運維中心。
查看工作流實例的詳細情況,也可以暫停、恢復、停止和重跑工作流實例,詳情請參見運維中心。
詳情:查看工作流實例的詳細信息,包括工作流節點實例的詳細信息和運行狀態。
停止工作流:終止正在運行的工作流實例,所有正在運行的作業節點立即停止。
暫停工作流:暫停正在運行的工作流實例,正在運行的作業節點會繼續執行,但后續的作業節點不再執行。
恢復工作流:恢復已被暫停的工作流實例。
重跑工作流:重新運行已經結束的工作流實例。單擊重跑后,可以選擇只重試失敗節點,也可以從頭重跑所有節點。
工作流可執行操作
在工作流設計區域,您可以在工作流名稱上單擊右鍵,執行如下操作:
克隆工作流:在同一文件夾下克隆出相同圖形的工作流。
重命名工作流:重新命名工作流的名稱。
刪除工作流:刪除工作流。當工作流在運行狀態時無法刪除。