深度剖析spark原理
简介
深度剖析源码加图解spark处理数据全流程
spark内核
开篇图
下面是Standalone集群模式的情况,yarn集群也是大同小异
- 向集群submit一个应用以后,启动一个Application,里面会启动一个Driver进程
- Driver里面会生成一个sparkContext,每一个action执行都会启动一个job
- 初始化sparkContext以后会生成一个DAGschedule和一个Taskschedule
- 然后Driver向Master申请Executor资源
- Executor申请下来以后会向Driver注册自己的信息
- DAGschedule根据启动的job生成一个个stage,每一个stage里面是一个taskset
- Taskschedule把生成的taskset发送到对应的Executor的线程池里面执行
- 相同stage里面的parition处理是在一个Task里面处理的
- 一个stage处理完以后Taskschedule就会处理另外一个,直到处理完为止