Spark資源排程和任務排程概述

2021-09-10 02:51:54 字數 623 閱讀 6596

standalone-client模式為例,序列圖如下:

圖中:1~6 資源排程

7~11 任務排程

spark資源排程和任務排程的流程:

總結:

taskscheduler不僅可以重試失敗的task,還可以重新執行緩慢的task,這是spark中的推測執行機制,預設關閉,對於資料清洗的場景要關閉,防止資料重複。

粗粒度資源申請:

任務執行之前,先將所有的資源申請到,task執行的時候不需要自己申請資源,加快了執行速度。如果多數task執行完成,只有乙個task沒有執行完,那麼這批申請到的資源不會被釋放,只有所有的task執行完成之後才會釋放所有資源。會有集群資源不能充分利用的情況。

細粒度資源申請:

任務執行之前,不會申請所有的資源,task執行時,自己申請資源,自己釋放資源,任務執行就慢了,但是集群資源可以充分利用。

參考:

spark資源排程和任務排程

資源排程 1 executor預設在集群中分散啟動,可通過引數配置集中在某個work啟動,不過分散啟動有利於資料本地化。2 如果spark submit提交任務時,如果不指定 executor cores,則spark會在每個work中啟動乙個executor並消耗掉work中的所有core和1g的...

spark的資源排程和任務排程以及粗細粒度資源申請

taskschedule是任務排程的低層排程器,這裡taskset其實就是乙個集合,裡面封裝的就是乙個個task任務,也就是stage中的並行度task任務 taskscheduler 不僅能重試失敗的 task,還會重試 straggling 落後,緩慢 task 也就是執行速度比其他 task ...

Spark的資源排程

7 加深理解 val works new hashset workinfo val waitingdrivers new arraybuffer driverinfo 可能直接看下面的知識點會有點迷惑,若不理解可以結合第三部分的流程圖一起看 works 集合採用hashset陣列儲存work的節點資...