Spark架構體系
StandAlone模式是spark自帶的集群運行模式,不依賴其他的資源調度框架,部署起來簡單,
StandAlone模式又分為client模式和cluster模式,本質區別是Driver運行在哪里,如果Driver運行在SparkSubmit行程中就是Client模式,如果Driver運行在集群中就是Cluster模式
standalone client模式

standalone cluster模式

Spark On YARN cluster模式

Spark執行流程簡介

- Job:RDD每一個行動操作都會生成一個或者多個調度階段 調度階段(Stage):每個Job都會根據依賴關系,以Shuffle程序作為劃分,分為Shuffle Map Stage和Result Stage,每個Stage對應一個TaskSet,一個Task中包含多Task,TaskSet的數量與該階段最后一個RDD的磁區數相同,
- Task:分發到Executor上的作業任務,是Spark的最小執行單元
- DAGScheduler:DAGScheduler是將DAG根據寬依賴將切分Stage,負責劃分調度階段并Stage轉成TaskSet提交給TaskScheduler
- TaskScheduler:TaskScheduler是將Task調度到Worker下的Exexcutor行程,然后丟入到Executor的執行緒池的中進行執行
Spark中重要角色
- Master :是一個Java行程,接收Worker的注冊資訊和心跳、移除例外超時的Worker、接收客戶端提交的任務、負責資源調度、命令Worker啟動Executor,
- Worker :是一個Java行程,負責管理當前節點的資源管理,向Master注冊并定期發送心跳,負責啟動Executor、并監控Executor的狀態,
- SparkSubmit :是一個Java行程,負責向Master提交任務,
- Driver :是很多類的統稱,可以認為SparkContext就是Driver,client模式Driver運行在SparkSubmit行程中,cluster模式單獨運行在一個行程中,負責將用戶撰寫的代碼轉成Tasks,然后調度到Executor中執行,并監控Task的狀態和執行進度,
- Executor :是一個Java行程,負責執行Driver端生成的Task,將Task放入執行緒中運行,
Spark和Yarn角色對比

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/556080.html
標籤:其他
上一篇:日均調度 10W+ 任務實體,DolphinScheduler 在蔚來汽車一站式資料治理開發平臺的應用改造
下一篇:返回列表
