Spark架构原理

Spark架构原理

 

1,编写的Spark程序在Driver上由Driver进程执行,Driver进程启动后,就会做一些初始化操作,在这个操作过程中就会发送请求到Master上,进行Spark应用程序的注册,就是让master知道有一个新的spark应用程序要运行。

2,Master接收到Driver的注册请求就开始资源调度和分配,交给Woker进行计算。

3,Worker接收到Master的请求之后,会为Spark应用程序启动Executor进程。

4,Executor进程启动后就会创建一个个task线程来执行Spark应用程序。

5,Executor启动之后会向Driver进行反注册。这样Driver就知道,有哪些Executor是为它进行服务的了。

6,Driver注册了一些executor之后,就可以开始正式执行spark应用程序了。

7,Driver根据对RDD的定义的操作,会提交一大堆task去executor上。

8,task线程就会对RDD的partition数执行指定的算子操作,形成新的RDD的partition。