Spark内核架构包括:Application、spark-submit、Driver、SparkContext、Master、Worker、Executor、Job、DAGScheduler、TaskScheduler、ShuffleMapTaskand ResultTask等部分。

Standalone client提交模式:

Spark学习-Standlone提交模式

1.Standalone会通过反射的方式,创建和构造一个DriverActor进程。

2.DriverActor进程执行Application应用程序。

3.SparkContext在初始化时,构造出DAGScheduler和TaskScheduler。

4.TaskScheduler通过后台进程连接Master,并向Master注册Application。

5.Master接收Application注册请求后,使用资源调度算法在集群worker上为Application启动多个Executor。

6.Executor会反向注册到TaskScheduler上去。

7.Driver结束SparkContext初始化,继续执行我们编写的代码。

8.每执行到一个Action,就会创建一个job,并提交给DAGScheduler。

9.DAGScheduler会将job划分为多个stage,然后每个stage创建一个TaskSet。

10.TaskScheduler会把TaskSet里每一个Task提交到Executor上执行。

11.Executor每接收到一个task,都会用TaskRunner来封装Task,然后从线程池里取出一个线程来执行。

12.每个Task针对RDD的一个partition,执行我们定义的算子和函数。

相关文章:

  • 2021-09-15
  • 2021-10-03
  • 2022-01-04
  • 2021-07-12
  • 2022-12-23
  • 2022-12-23
  • 2021-07-03
  • 2022-12-23
猜你喜欢
  • 2021-09-08
  • 2022-01-26
  • 2021-07-04
  • 2021-06-17
  • 2021-07-29
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案