Todo Spark執行架構

2021-09-07 07:52:55 字數 359 閱讀 6721

也就是這篇文章的主要參考文章。

關於rdd和stage的區別,可以參考這張圖

其中a, b, c這樣的字母代表的就是rdd,虛線框就是stage。之前提到,stage劃分,是看有沒有shuffle這樣操作的rdd而決定的。

常見的函式式程式語言有: scala, erlang, haskell, lisp, golang(就是go language), 哈哈哈。還有乙個clojure,是執行在jvm上面的lisp方言。還有f#.

可以再接著看:

以及《spark on yarn》 

Spark執行架構

job 包含多個task組成的平行計算,乙個dag觸發的作業,由action運算元觸發,在sparkcontext中通過runjob方法向spark提交job stage job的排程單位,每個job會根據rdd的寬依賴關係被切分成很多stage,每個stage中包含一組相同的task,這組task...

Spark執行架構

在driver program中新建sparkcontext 包含sparkcontext的程式稱為driver program 2 sparkcontext向資源管理器申請執行executor資源,並啟動standaloneexecutorbackend,executor向sparkcontent...

Spark執行架構

spark執行架構要背下來 driver program 執行main函式的程序,並且建立了乙個sparkcontext cluster manager 乙個從cluster申請資源的外部服務 deploy mode 區分driver程序跑在 client模式下,driver跑在本地 cluster...