- 博客(6)
- 问答 (1)
- 收藏
- 关注
原创 Task执行流程
1、源码走读(1)当Driver中的SchedulerBackend(Standalone模式为CoarseGrainedSchedulerBackend)给ExecutorBackend(Standalone模式为CoarseGrainedExecutorBackend)发送LaunchTask之后,CoarseGrainedExecutorBackend在收到LaunchTask消息后,E...
2020-04-10 23:47:20 1641
原创 TaskScheduler相关
目录1、DAGScheduler与TaskScheduler2、TaskScheduler与SchedulerBackend3、任务调度过程总结1、DAGScheduler与TaskSchedulerDAGScheduler面向我们整个Job划分出了Stage,划分了Stage是从后往前划分的,执行的时候是从前往后,每个Stage内部有一系列任务,Stage里面的任务是并...
2020-04-08 23:49:44 1035
原创 Stage划分和Task最佳位置
1、Job Stage划分Spark Application中因为不同的Action触发众多的Job,也就是说一个Application中可以有很多的Job,每个Job是由是由一个或者多个Stage构成的,后面的Stage依赖于前面的Stage,也就是说只有前面依赖的Stage计算完毕后,后面的Stage才会运行。而Stage划分的依据就是宽依赖。下面以RDD的collect方法为例:(1...
2020-04-06 13:34:46 1355
原创 Spark Executor解析
目录1、Spark Executor如何工作2、Spark Executor工作源码1、Spark Executor如何工作当Driver发送过来Task的时候,其实是发送给CoarseGrainedExecutorBackend这个RPCEndpoint,而不是直接发送给Executor(Executor由于不是消息循环体永远也无法接收远程发过来的信息)。Driver向...
2020-04-06 01:06:40 1770
原创 Spark Worker源码
目录1、概述2、LaunchDriver3、LaunchDriver4、总结1、概述worker肯定是实现RPC通信的,否则别人没法给你发消息。他继承的是ThreadSafeRpcEndpoint,ThreadSafeRpcEndpoint是线程安全的,意味着处理一条消息完成后再处理下一个消息。换句话说,在处理下一条消息时,可以看到对ThreadSafeRpcEn...
2020-04-05 19:49:27 939
原创 Spark Master的注册机制与状态管理
1、Master接收注册的主要对象Master主要接受注册的对象是:Application,Driver,Worker。注意:Executor不是注册给master而是注册给Driver中的SchedulerBackend2、Master接收Worker的注册Worker启动后主动向Master注册,所以在生产环境下不需要重启集群就能够使用新的Worker。(1)worker是...
2020-04-05 19:32:46 944
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人