1. 程式人生 > >Spark的啟動程序詳解

Spark的啟動程序詳解

Master和Worker是執行任務之前存在的程序 (類似於公司)

Driver和Excutor是任務執行之後存在的程序(類似於公司接到專案後才成立的專案小組)

啟動步驟:

  1. 啟動Master資源管理程序和Work程序
  2. 有任務來執行時會啟動Driver程序,然後向Master資源管理程序進行註冊並申請資源
  3. Master資源管理程序分配資源給Worker程序
  4. Work程序開啟Executor程序, Worker程序向Master程序報告Executor的狀態
  5. Executor(持有Driver物件引用)在啟動開始時會先向Driver進行註冊,

注測的目的:

  1. 將執行的Executor放入到Driver的Executor集合中,以便Executor發出心跳檢測訊號和Driver進行接收並更新時間後, 進行超時檢測
  2. Driver劃分任務後可以分配任務給Driver
  3. Executor註冊完畢後, Driver會劃分任務(Task),然後排程任務(Task)給註冊的Executor去執行
  4. Executor執行任務(Task)時會向Driver報告任務執行狀態,直到執行完
  5. 任務執行完後,Executor程序會消失, 最後Driver程序也會向Master程序進行登出