閱讀369 返回首頁    go 阿裏雲


工作流設計器__數據開發手冊_用戶操作指南_大數據開發套件-阿裏雲

設計器介紹

工作流是由多個節點和節點間的依賴關係所組成的一組邏輯和規則,形成一張有向無環圖(DAG圖)。開發者可通過數據開發>開發麵板>新建或數據開發>管理麵板>新建工作流來新建工作流進入工作流設計器,在工作流設計器中通過拖拽不同類型節點並連線的方式來開發一個工作流。如下圖所示:

工作流設計器

工作流設計器各區域具體介紹如下:

1-工作流選項卡:顯示當前打開的工作流,可切換和關閉。

  • 鼠標懸浮會顯示完整工作流名稱。

  • 鼠標點擊可以左右拖拽變換選項卡位置。

  • 最多能同時打開10個工作流或任務,可通過“更多操作”來關閉所有、關閉其他、關閉額外(隱藏的選項卡)的工作流。

  • 當工作流選項卡有小圓點時表示該工作流有變更但未保存。

2-工具:工作流設計器中常用的操作。

序號 標識 標識說明
0 新建 新建文件,包括工作流任務、腳本文件、數據表。
1 保存 保存當前工作流變更,支持快捷鍵:ctrl+s。
2 提交 提交當前工作流到調度係統,提交成功後會釋放鎖定。同時,提交成功工作流裏有變更的節點就會新增一個版本。
3 測試運行 工作流提交後,可以在此冒煙運行工作流,功能等同運維中心工作流測試。
4 刪除 點擊刪除工作流選中的節點。
5 格式化 工作流DAG圖自動布局顯示。
6 全屏 工作區全屏。
7 前往運維調度係統 ,點擊跳轉至運維中心任務管理視圖。
8 放大/縮小 放大/縮小工作流DAG圖。
9 搜索 搜索工作流中的節點,達到快速定位。

3-節點組件:工作流設計器支持的節點組件類型,您可點擊節點組件拖拽至開發麵板或者雙擊節點組件進行創建該類型節點。

  • ODPS SQL類型

ODPS SQL采用的是類似於SQL的語法,可以看作是標準SQL的子集,但不能因此簡單的把ODPS SQL等價成一個數據庫,它在很多方麵並不具備數據庫的特征,如事務、主鍵約束、索引等。

  • OPEN MR類型

ODPS提供了MapReduce編程接口。用戶可以使用MapReduce提供的接口(Java API)編寫MapReduce程序處理ODPS的中的數據。在阿裏雲數加平台-數據開發中OPEN MR節點(或任務)需要與資源一同使用。

該類型節點需要工單提交申請,給項目對應計算引擎odps project開通後才可用。

  • 數據同步

數據同步節點任務是阿裏雲數加平台對外提供的穩定高效、彈性伸縮的數據同步雲服務。用戶利用數據同步節點可以輕鬆地將業務係統數據同步到ODPS上來。

  • 機器學習

機器學習節點用來調用機器學習平台中構建的任務,並按照節點配置進行調度生產。

  • Shell腳本

Shell節點支持標準的Shell語法,不支持交互式語法。

項目默認沒有該類型節點,需申請開通,具體參見常見問題中“怎麼開通shell類型任務?”的描述。

  • 虛擬節點(virtual)

虛擬節點屬於控製類型節點,即,其不產生任何數據的空跑節點,常用於工作流統籌節點的根節點。

示例:輸出表由3個數據同步任務導入的源表經過ODPS SQL任務加工產出,這3個數據同步任務沒有依賴關係,ODPS SQL任務需要依賴3個同步任務,則工作流可以為如圖所示:

用一個虛擬節點作為工作流起始根節點,3個數據同步任務依賴虛擬節點,ODPS SQL加工任務依賴3個同步任務。

4-開發麵板:工作流設計器的開發麵板,展示當前工作流包含的節點及上下遊依賴關係。

  • 選擇節點可拖拽變更其坐標位置。

  • 鼠標點擊畫布空白區可拖拽整個DAG圖的坐標位置。

  • 可通過鼠標連線的方式來創建上下遊依賴關係。當鼠標放至父節點底部突出的小圓點時鼠標將呈十字型,此時可以點擊引出連線並拖拽線到子節點圖上鬆開,即可完成節點節點依賴關係配置。

  • 選中節點右鍵可以查看節點代碼(進入代碼編輯區)、保存節點、刪除節點。當工作流處於鎖定狀態時,右鍵菜單隻有查看節點代碼選項。

  • 鼠標對節點依賴線右鍵可以刪除依賴線即刪除兩個節點的依賴關係。

  • 雙擊節點可以進入節點代碼編輯區。

5-節點選項卡:當前打開的節點代碼或配置。

6-調度配置:包括工作流調度配置和節點調度配置的配置。

  • 工作流調度配置,主要是配置工作流各種調度屬性。

  • 節點調度配置,鼠標單擊選中某個節點後會出現節點屬性組件,主要是配置節點基本屬性。

調度配置

工作流任務是一個DAG圖(有向無環圖),其描述了作業中多個節點之間的邏輯(依賴關係)和規則(運行約束)。

節點任務是一個可獨立調度的任務,也可以通過任務屬性配置節點任務與節點任務或者節點任務與工作流任務之間的邏輯(依賴關係)和規則(運行約束)。

工作流屬性配置包括基本屬性調度屬性依賴屬性跨周期依賴四大部分。

基本屬性

  • 工作流名稱:新建工作流時填寫的工作流名稱,不支持修改。

  • 責任人:默認為當前登錄人,也可以修改成本項目其他成員。隻有當前負責人以及管理員可以修改。

  • 描述:新建工作流時填寫的描述,支持修改。

調度屬性

  • 調度狀態:是否勾選暫停,默認不勾選。任務暫停後,每天都會自動調度但是實例會直接返回失敗狀態,不會真正的運行任務邏輯。

  • 調度生效日期:調度將在有效日期內生效並自動調度,反之,在有效期外的工作流將不會自動調度,也不能手動調度。

  • 調度周期:設置工作流調度頻次,支持天/周/月/分鍾/小時

【說明】當創建一次性調度工作流任務時,工作流不具備調度屬性配置選項;隻有創建周期性調度工作流任務時,工作流任務才具有調度屬性配置選項。

依賴屬性

  • 自動推薦:係統自動掃描節點代碼解析出來源和目標表從而推薦來源表是從哪個任務產出,隻有SQL類型節點任務和工作流任務有這個功能,同時也隻能解析到SQL任務產出的表。

  • 所屬項目:當前組織內所有項目空間,可在下拉列表中進行選擇。

  • 上遊任務:對應所屬項目空間中的任務,用來設置當前任務的上遊任務,非必填項。支持工作流名稱模煳匹配查詢。

【說明】當前工作流/節點任務調度執行時,需滿足如下條件:

1)若當前工作流/節點任務存在上遊,則需上遊執行並返回成功後,且自身定時時間已到或已過才會觸發當前節點/工作流調度執行。

2)若當前工作流/節點不存在上遊,隻需滿足自身定時時間這一個條件即可調度執行。

跨周期依賴

配置節點/工作流任務的跨周期依賴,如,天調度任務今天需要執行的數據依賴本任務昨天執行的數據,那麼可以配置依賴任務昨天的周期,如此,昨天的實例必須先執行成功,今天的實例才可以調度起來,這種依賴主要是體現在任務調度實例的依賴。

  • 不依賴上一調度周期。所有任務默認選擇該選項,即不依賴任何任務的上周期實例。
  • 自依賴,等待上一調度周期結束,才能繼續運行。使用場景:任務A當前周期數據來源依賴與任務A上周期執行的結果;或者小時/分鍾調度任務A不允許實例並行。
  • 等待下遊任務的上一周期結束,才能繼續運行。依賴第一層子任務的上周期。這種使用場景不多,選擇此項,後續該任務一旦被其他任務直接依賴則實例都依賴所有第一層子任務的上周期實例。
  • 等待自定義任務的上一周期結束,才能繼續運行。常見場景:天任務A依賴一個數據是天任務B昨天產出的。

【說明】

1)依賴屬性配置的調度依賴是同周期依賴和跨周期依賴不衝突。任務A可以配置依賴屬性依賴任務B也可以配置跨周期依賴依賴B,如此任務A即依賴任務B本周期也依賴任務B上周期。

2)若任務A是小時/分鍾調度,任務B為天調度,任務B配置依賴任務A的上周期,那麼當天B任務的實例會依賴A任務昨天所有實例。

3)若任務A和B都是小時/任務調度,調度周期一樣,任務B配置依賴任務A的上周期,則任務B每個實例都將依賴A昨天所有實例和A與B同周期的前一個周期實例。

4)如天任務A配置跨周期依賴B的上周期,那麼對A任務進行補數據的時候,補數據實例會去依賴B任務自動調度上周期實例,如果自動調度的上周期實例不存在則不依賴。

節點調度配置

節點屬於工作流的子對象,也稱之為任務,是阿裏雲數加平台數據處理和分析過程的最基本單元,每個任務對應DAG圖中的一個節點,其可以是一個SQL Query命令和MapReduce程序等。

在工作流設計器中,節點可以是節點組件(ODPS SQL、OPEN MR、數據同步、SHELL、機器學習、虛節點)中的一種,您在工作流開發麵板中選中節點並展開節點屬性配置,如下圖:

節點屬性配置包括基本屬性節點版本兩大部分。

基本屬性

  • 節點名稱:新建節點時填寫的節點名稱,不支持修改。

  • 責任人:默認為當前用戶,也可以修改成本項目其他成員。隻有當前負責人可以修改責任人。

  • 節點類型:當前節點的類型,不支持修改。

  • 描述:新建節點時填寫的描述,支持修改。

節點版本

節點每修改提交一次都將產生一個版本。節點版本則顯示節點的曆史版本列表,包括版本號、提交人、提交時間、描述和操作。目前隻針對ODPS SQL、SHELL、OPEN MR三種類型節點的版本。也可以勾選兩個版本進行代碼對比。

最後更新:2016-11-24 11:23:48

  上一篇:go 文件目錄__數據開發手冊_用戶操作指南_大數據開發套件-阿裏雲
  下一篇:go ODPS代碼編輯器__數據開發手冊_用戶操作指南_大數據開發套件-阿裏雲