1. 程式人生 > >spark任務提交流程與管依賴和窄依賴

spark任務提交流程與管依賴和窄依賴

spark核心執行流程圖 spark核心執行流程圖 代表4個階段 1構建RDD,進行join,groupBy,filter操作,形成DAG有向無環圖(有方向,沒有閉環),在最後一個action時完成DAG圖,代表著資料流向 2提交DAG為DAGScheduler,DAG排程器,主要是將DAG劃分成一個個stage,並且提交stage 切分的依據是寬依賴,也就是有網路的傳遞 在這裡插入圖片描述 3TaskScheduler,Task排程器,啟動task通過cluster manager(嚴格意義上是driver),先啟動executer,再通過driver提交task到worker下面的executer.straggling tasks再起一個任務進行任務重置(如果100個任務99個完成一個沒完成,起一個任務,和沒完成的任務計算同樣的資料) 4worker,executer開始執行task,block manager是管理分割槽的,在executer上面開執行緒,執行業務邏輯 管依賴和窄依賴

在這裡插入圖片描述 恢復的時候得根據依賴關係恢復(checkPoint) 窄依賴:父分割槽的資料只給一個子分割槽 寬依賴:父分割槽的資料給多個子分割槽