【大數據開發套件調度配置實踐】——調度任務各種周期配置和調度形態
數加·大數據開發套件目前支持任務調度周期有五種:天、周、月、分鍾、小時。本文將介紹這五種周期的配置和調度形態。
調度規則——調度任務是否能運行起來要滿足的條件:
- 上遊任務實例是否都運行成功。若所有上遊任務實例都運行成功則觸發任務進入等待時間狀態。
- 任務實例定時時間是否已經到。任務實例進入等待時間狀態後會check本身定時時間是否到,如果時間到了則進入等待資源狀態;
- 當前調度資源是否充足。任務實例進入等待資源狀態後,check當前本項目調度資源是否充足,若充足則可以運行起來。
天調度任務
天調度任務,即每天自動調度運行一次,運行時遵循調度規則。新建調度任務時,調度周期默認就是天調度。
具體時間默認是00:00:00,可自行指定,當然指定具體時間後依然需要遵循調度規則進行起調,不一定就能在指定的時間馬上運行起來。
場景:3個任務——導入、統計加工、導出,都是天任務,具體時間如上圖13點;統計加工任務依賴導入任務,導出任務依賴統計加工任務,依賴配置如下圖(‘統計加工任務’的依賴屬性配置上遊任務為‘導入任務’):
這樣的配置自動調度形態如下:
周調度任務
周調度任務,即每周周N那天會自動調度運行一次,運行時遵循調度規則;沒指定的每天也都會生成自動調度實例但是是空跑實例,即調度到的時候直接返回成功狀態不會真正執行任何邏輯,也不會占用資源。
如上圖中,每周一、周五兩天生成的實例會正常的調度執行,而周二、三、四、六以及周日5天都是生成空跑實例。
注意: 這個任務提交後,想進行調度測試,選擇業務日期的時候,隻有選擇“周日”或“周四”的日期,生成的測試實例可以真正運行的實例,選擇其他業務日期生成的實例都是空跑實例。
任務的自動調度形態如下:
月調度任務
周調度任務,即每月指定的日期那天會自動調度運行一次,運行時遵循調度規則;沒指定的日期每天也都會生成自動調度實例但是是空跑實例,即調度到的時候直接返回成功狀態不會真正執行任何邏輯,也不會占用資源。
如上圖中,每月1日生成的實例會正常的調度執行,其他日期每天都是生成空跑實例。
注意:
- 這個任務提交後,想進行調度測試,選擇業務日期的時候,隻有選擇每個月最後一天的日期生成的測試實例才能真正運行,其他業務日期生成的實例都是空跑實例。
- 目前係統不支持配置“每月最後一天”,調度周期—選擇時間若選“每月31日”那麼隻有那個有31日的月份會有一天真正調度,其他都是空跑。若是需要統計匯總每個月的數據,正常情況就是配置每月一日調度,代碼邏輯裏寫定義處理上個月的數據。
上圖的配置,任務自動調度形態如下:
分鍾調度任務
分鍾調度任務,即每天指定的時間段內,每隔N(5的倍數)分鍾自動調度運行一次,運行時遵循調度規則。
如上圖,表示每天00點整到23點59分這個時間段內,每隔30分鍾會自動調度一次。
開始時間、結束時間的“時”可以調整,比如可以調整為每天08點——20點59分,每隔30分鍾執行一次。
上圖的配置,調度形態如下:
小時調度任務
小時調度任務,即每天指定的時間段內,每隔N(1的倍數)分鍾自動調度運行一次,運行時遵循調度規則。
如上圖,表示每天00點整到23點59分這個時間段內,每隔6小時會自動調度一次。
開始時間、結束時間的“時”可以調整,比如可以調整為每天08點——20點59分,每隔1小時執行一次。
上圖的配置,調度形態如下:
最後更新:2017-06-15 17:32:15