当前位置:   article > 正文

spark架构原理(一)_spark原理与架构

spark原理与架构

spark内核架构由一下几部分组成
1、Application
自己的spark程序

2、spark-submit
提交任务, standalone模式下会创建一个DriverActor进程

3、Driver(进程)
执行application程序,初始化sparkcontext,

4、SparkContext
构造DAGschedule和TaskSchedule

8、Job
每执行一个action,会创建一个job,提交给DAGSchedule。

5、DAGScheduler
DAGschedule会将job按照stage划分算法划分为stage,并为每一个stage创建taskset。

6、TaskScheduler
通过一个后台进程连接master,向master注册application,并接受excutor的反向注册,然后将taskset中的每一个task提交到excutor上(task分配算法)。

7、Master
master接收到application注册请求后,使用资源调度算法,在集群的worker上,为这个application启动多个excutor。

6、Worker
worker为application启动excutor

7、Executor
executor启动后,反向注册到taskscheduler上,executor本身是一个进程,包括一个线程池和taskRunner,每接收到一个task,taksRunner封装task,对要执行的程序,拷贝反序列化。然后从线程池中取出一个线程,执行task。

11、ShuffleMapTask and ResultTask
task有两张,shufflemaptask和resulttask,只有最后一个stage是resultTask,之前的stage都是shufflemaptask。

stage作为taskset提交给excutor执行,每个task执行rdd的一个partition。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/772305
推荐阅读
相关标签
  

闽ICP备14008679号