資料排程

mcxiaoracle發表於2022-11-13

ob和Task有幾種不同語境下的區別:

spark語境下

在Spark中,Task是一個Job進行切割後執行的最小運算單元。一般情況下,一個rdd有多少個partition,就會有多少個Task,因為每一個Task只是處理一個partition上的資料。而Task進行組合分批後,被稱為stage。Spark會為不同的stage以及不同的Task設好前後依賴,來保證整個Job執行的正確性和完整性,最後一個resultTask結束意味著Job成功執行。

Job>stage>Task

hadoop語境下

Hadoop一個作業稱為一個Job,Job裡面分為Map Task和Reduce Task階段,每個Task都在自己的程式中執行,當Task結束時,程式也會隨之結束。

Job>Task

某排程產品語境下

Task:一個任務。

TaskType:任務型別,如ETL、MR Job、Simple。

Job:作業,任務在執行過程中的一次執行。

綜上所述,Job、Task不同語境下,他們的關係是不一樣的,所以在不同的資料排程產品中,要注意他們的區別。

總結一下,資料排程,就是一個任務何時執行,何時結束以及正確的處理任務之間的依賴關係。我們需要關注的首要重點是在正確的時間點啟動正確的作業,確保作業按照正確的依賴關係及時準確的執行。



②工作流:任務狀態(中斷&執行)、任務管理or治理(型別、變更)、任務型別、任務分片。

③排程策略:就緒&超時;重試&重試次數&重試用時。

④任務隔離:任務和執行的關係等。

我們可以按DAG工作流類、定時分片系統分為兩類:

一種是DAG工作流類系統:oozie、azkaban、chronos、lhotse


如果選擇了DAG工作流這種方式,就要注意時間、完成度,保證豐富靈活的觸發機制。

推薦閱讀:

[1].


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69949806/viewspace-2923091/,如需轉載,請註明出處,否則將追究法律責任。

相關文章