两种类型的Spark RDD task解析以及iterator解析 -- (视频笔记)
spark 每次提交一個作業,都會劃分成不同的stage,除了最后一個stage(shuffle map task),前邊的stage屬于一種類型(result task)。
spark中的job,內部是由具體task構成,由于spark的調度模式根據寬依賴的模式劃分成不同的stage,而我們從spark獲取結果,是從最后一個stage中獲取的。
stage內部有不同的任務,任務被提交到集群的計算節點,計算節點計算邏輯的時候,在excutor中
線程池中的線程中運行,線程會調用具體的run方法執行。
最后一個stage task類型為result類型,之前的所有的類型都為shuffle map task類型。
?
RDD objects:建DAG圖,
DAGschedule:根據DAG圖,將任務劃分為不同的stage即task
TaskScheduler:cluster 獲取task,并分配給worker和重試失敗的任務。(shuffle map task和result task)
shuffle map task會將stage劃分為不同的buckets。buckets決定這并行度。
worker:執行具體的task,兩種taks都包含runtask 方法,方法中執行的iterator,iterator中包含cache判斷。(可以在源碼中查看到)
轉載于:https://www.cnblogs.com/isenhome/p/5086130.html
總結
以上是生活随笔為你收集整理的两种类型的Spark RDD task解析以及iterator解析 -- (视频笔记)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mongodb 笔记01 Mongo
- 下一篇: 映像劫持技术(2):实例