配置任務(wù)調(diào)度
本文以配置任務(wù)write_result的調(diào)度周期為周調(diào)度為例,為您介紹如何設(shè)置DataWorks的調(diào)度屬性和依賴屬性。
前提條件
已創(chuàng)建虛擬節(jié)點(diǎn)(start)和ODPS SQL節(jié)點(diǎn)(insert_data,詳情請(qǐng)參見創(chuàng)建業(yè)務(wù)流程。
已創(chuàng)建同步節(jié)點(diǎn)write_result生成的同步任務(wù),詳情請(qǐng)參見創(chuàng)建同步任務(wù)。
背景信息
DataWorks具有強(qiáng)大的調(diào)度能力,支持根據(jù)時(shí)間、依賴關(guān)系的觸發(fā)機(jī)制。DataWorks可以為您保障每日千萬級(jí)別的任務(wù),根據(jù)DAG關(guān)系準(zhǔn)確、準(zhǔn)時(shí)運(yùn)行,并且支持分鐘、小時(shí)、天、周和月多種調(diào)度周期配置,詳情請(qǐng)參見時(shí)間屬性配置說明。
配置時(shí)間屬性
進(jìn)入數(shù)據(jù)開發(fā)頁(yè)面。
登錄DataWorks控制臺(tái),切換至目標(biāo)地域后,單擊左側(cè)導(dǎo)航欄的 ,在下拉框中選擇對(duì)應(yīng)工作空間后單擊進(jìn)入數(shù)據(jù)開發(fā)。
在相應(yīng)的業(yè)務(wù)流程下,雙擊打開離線同步節(jié)點(diǎn)write_result的編輯頁(yè)面。
單擊編輯頁(yè)面右側(cè)導(dǎo)航欄的調(diào)度配置。
說明手動(dòng)業(yè)務(wù)流程中創(chuàng)建的節(jié)點(diǎn)需要手動(dòng)觸發(fā),無法通過調(diào)度執(zhí)行。
在時(shí)間屬性區(qū)域,配置任務(wù)的調(diào)度時(shí)間屬性。
參數(shù)
描述
實(shí)例生成方式
包括T+1次日生成和發(fā)布后即時(shí)生成。詳情請(qǐng)參見實(shí)例生成方式:發(fā)布后即時(shí)生成實(shí)例。
調(diào)度類型
正常調(diào)度:按照調(diào)度周期配置的定時(shí)時(shí)間啟動(dòng)調(diào)度,正常執(zhí)行任務(wù)(即會(huì)真實(shí)跑數(shù)據(jù))。
暫停調(diào)度:按照調(diào)度周期配置的定時(shí)時(shí)間啟動(dòng)調(diào)度,但節(jié)點(diǎn)狀態(tài)被置為暫停(即不會(huì)真實(shí)跑數(shù)據(jù))。
空跑調(diào)度:按照調(diào)度周期配置的定時(shí)時(shí)間啟動(dòng)調(diào)度,但該節(jié)點(diǎn)為空跑狀態(tài)(即不會(huì)真實(shí)跑數(shù)據(jù))。
調(diào)度周期
節(jié)點(diǎn)的運(yùn)行周期(年、月、周、日、小時(shí)和分鐘),此處示例設(shè)置每周一、周二的
00:00
點(diǎn)啟動(dòng)調(diào)度。cron表達(dá)式
根據(jù)您配置的調(diào)度時(shí)間默認(rèn)顯示,不可以更改。
超時(shí)定義
當(dāng)任務(wù)運(yùn)行時(shí)長(zhǎng)超過超時(shí)時(shí)間,任務(wù)將自動(dòng)終止運(yùn)行。
超時(shí)時(shí)間對(duì)周期實(shí)例、補(bǔ)數(shù)據(jù)實(shí)例、測(cè)試實(shí)例均生效。
超時(shí)時(shí)間默認(rèn)值為3~7天,系統(tǒng)根據(jù)實(shí)際負(fù)載情況動(dòng)態(tài)調(diào)整默認(rèn)的任務(wù)超時(shí)時(shí)間,范圍為3~7天不等。
說明超時(shí)定義最大值可設(shè)置為168小時(shí)。
由于任務(wù)執(zhí)行時(shí)間過長(zhǎng)而導(dǎo)致任務(wù)超時(shí)終止,仍會(huì)收取該任務(wù)產(chǎn)生的流量、計(jì)算等費(fèi)用。
重跑屬性
包括運(yùn)行成功或失敗后皆可重跑、運(yùn)行成功后不可重跑,運(yùn)行失敗后可以重跑和運(yùn)行成功或失敗后皆不可重跑。
失敗自動(dòng)重跑
如果重跑屬性設(shè)置為運(yùn)行成功或失敗后皆可重跑和運(yùn)行成功后不可重跑,運(yùn)行失敗后可以重跑時(shí),會(huì)顯示該屬性,可以配置任務(wù)出錯(cuò)自動(dòng)重跑。如果設(shè)置為運(yùn)行成功或失敗后皆不可重跑,則不會(huì)顯示該屬性,即任務(wù)出錯(cuò)不會(huì)自動(dòng)重跑。
重跑次數(shù)
當(dāng)勾選出錯(cuò)自動(dòng)重跑后,您需要配置重跑次數(shù)。
重跑間隔
當(dāng)勾選出錯(cuò)自動(dòng)重跑后,您需要配置重跑間隔。默認(rèn)每次重跑的間隔為30分鐘,最小支持設(shè)置為1分鐘,最大支持設(shè)置為30分鐘。
生效日期
節(jié)點(diǎn)的有效日期,請(qǐng)根據(jù)自身需求進(jìn)行設(shè)置。
更多時(shí)間屬性介紹,詳情請(qǐng)參見時(shí)間屬性配置說明。
配置調(diào)度依賴
依賴屬性中可以配置節(jié)點(diǎn)的上游依賴,表示即使當(dāng)前節(jié)點(diǎn)的實(shí)例已經(jīng)到定時(shí)時(shí)間,也必須等待上游節(jié)點(diǎn)的實(shí)例運(yùn)行完畢,才會(huì)觸發(fā)運(yùn)行。
例如,當(dāng)前節(jié)點(diǎn)的實(shí)例將在上游insert_data節(jié)點(diǎn)的實(shí)例運(yùn)行完畢后,才會(huì)觸發(fā)執(zhí)行。
從業(yè)務(wù)維度看,節(jié)點(diǎn)依賴關(guān)系設(shè)置就是下游節(jié)點(diǎn)等待上游節(jié)點(diǎn)產(chǎn)出表數(shù)據(jù)后,下游節(jié)點(diǎn)再對(duì)該表數(shù)據(jù)進(jìn)行下一步操作,比如對(duì)上游產(chǎn)出的表數(shù)據(jù)進(jìn)行進(jìn)一步清洗,或者將上游清洗的結(jié)果表數(shù)據(jù)回流至其他數(shù)據(jù)庫(kù),但這些都需要等待上游節(jié)點(diǎn)執(zhí)行成功(上游節(jié)點(diǎn)產(chǎn)出表數(shù)據(jù))后才可以進(jìn)行的操作,節(jié)點(diǎn)依賴關(guān)系的設(shè)置,保障的就是下游節(jié)點(diǎn)執(zhí)行時(shí),依賴的上游數(shù)據(jù)已經(jīng)產(chǎn)出。關(guān)于調(diào)度依賴的邏輯說明詳情,您可以參考文檔:調(diào)度依賴配置指引。
在調(diào)度系統(tǒng)中,每一個(gè)工作空間中默認(rèn)會(huì)創(chuàng)建一個(gè)工作空間名稱_root節(jié)點(diǎn)作為根節(jié)點(diǎn)。如果本節(jié)點(diǎn)沒有上游節(jié)點(diǎn),可以直接依賴根節(jié)點(diǎn)。
提交并發(fā)布任務(wù)
在write_result節(jié)點(diǎn)的編輯頁(yè)面,單擊工具欄中的圖標(biāo),保存節(jié)點(diǎn)。
提交任務(wù)。
說明您需要設(shè)置節(jié)點(diǎn)的重跑屬性和依賴的上游節(jié)點(diǎn),才可以提交任務(wù)。
單擊工具欄中的圖標(biāo)。
在提交對(duì)話框中,輸入變更描述。
單擊確認(rèn)。
如果您使用的是標(biāo)準(zhǔn)模式的工作空間,提交成功后,開發(fā)環(huán)境便有了該同步任務(wù),如果需要將其發(fā)布至生產(chǎn)環(huán)境進(jìn)行周期性調(diào)度,請(qǐng)單擊左上角的任務(wù)發(fā)布。在此界面將同步任務(wù)發(fā)布至生產(chǎn)環(huán)境。具體操作請(qǐng)參見發(fā)布任務(wù)。
同步任務(wù)只有提交至調(diào)度系統(tǒng)中,才會(huì)從第二天開始,自動(dòng)根據(jù)調(diào)度屬性配置的周期,在各時(shí)間點(diǎn)生成實(shí)例,并定時(shí)運(yùn)行。
說明如果是23:30以后提交的同步任務(wù),則調(diào)度系統(tǒng)從第3天開始,才會(huì)自動(dòng)周期生成實(shí)例并定時(shí)運(yùn)行。
后續(xù)步驟
現(xiàn)在,您已經(jīng)學(xué)習(xí)了如何設(shè)置離線同步任務(wù)的調(diào)度屬性和依賴關(guān)系,您可以繼續(xù)下一個(gè)教程。在該教程中,您將學(xué)習(xí)如何對(duì)提交的任務(wù)進(jìn)行周期運(yùn)維,并查看日志排錯(cuò)。詳情請(qǐng)參見運(yùn)行及排錯(cuò)。