spark学习笔记之三:调度流程剖析

程序员->IDEA编写代码->jar包->放到集群计算->
提交spark应用程序的机器->shell中spark-submit脚本提交程序->运行Driver进程(client模式和提交机器相同)->new sparkContext对象->sparkContext在初始化的时候,会启动UI,设置spark的env,做的最重要的事情就是构造出一个TaskScheduler和一个DAGScheduler->
  • TaskScheduler->负责它对应的一个后台进程,去连接Master,向Master注册这个Application->Master接收到Application注册过来的请求之后,会用资源调度的算法,在spark集群的Worker上为这个App启动多个Executor进程->Executor启动之后会反向注册到TaskScheduler上面来->所有Executor都反向注册到Driver上之后,Driver结束SparkContext初始化,会继续执行我们自己编写的代码。
  • DAGScheduler -> Job的切分(action)->stage的切分(宽依赖)->生成包含多个task(pipeline)的taskSet->TaskScheduler将taskSet打散->TaskScheduler会(通过分配算法)把Taskset里面的每一个Task提交到Executor上去执行->Executor的线程去运行包含Task的TaskRunner
->总结,最后整个这个Spark应用程序的执行就是Stage分批次的做为Taskset提交到Executor里面执行,每个Task针对RDD的一个partition,执行我们的算子和函数,task并行执行。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书灯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值