Spark的Driver和Executor


Spark 框架有兩個核心組件:DriverExecutor

  • Driver:驅動整個應用運行起來的程序,也叫Driver類

    • 將用戶程序轉化為作業(job)
    • 在 Executor 之間調度任務(task)
    • 跟蹤 Executor 的執行情況
    • 通過 UI 展示查詢運行情況
  • Executor:

Spark Executor 是集群中工作節點(Worker)中的一個 JVM 進程,負責在 Spark 作業中運行具體任務(Task),任務彼此之間相互獨立。Spark 應用啟動時,Executor 節點被同時啟動,並且始終伴隨着整個 Spark 應用的生命周期而存在。如果有 Executor 節點發生了故障或崩潰,Spark 應用也可以繼續執行,會將出錯節點上的任務調度到其他 Executor 節點上繼續運行。

  • 負責運行組成 Spark 應用的任務,並將結果返回給驅動器進程
  • 它們通過自身的塊管理器(Block Manager)為用戶程序中要求緩存的 RDD 提供內存式存儲。RDD 是直接緩存在 Executor 進程內的,因此任務可以在運行時充分利用緩存數據加速運算。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM