本篇文章给大家分享的是有关如何解析Spark集群和任务执行过程,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
Spark集群组件
Spark基本执行流程
以StandAlone运行模式为例:
1.客户端启动应用程序及Driver相关工作,向Master提交任务申请资源
3.Worker启动Executor,Worker创建ExecutorRunner线程,ExecutorRunner会启动ExecutorBackend进程,Executor和Driver进行通信(任务分发监听等)
笔者强调:
-
Driver端进行的操作
-
SparkContext构建DAG图
-
DAGScheduler将任务划分为stage、为需要处理的分区生成TaskSet
-
TaskScheduler进行task下发
-
SchedulerBackend将任务提交到Executor上运行 -
资源划分的一般规则
-
获取所有worker上的资源
-
按照资源大小进行排序
-
按照排序后的顺序拿取资源
-
轮询
-
优先拿资源多的 -
Spark不同运行模式任务调度器是不同的,如Yarn模式:yarn-cluster模式为YarnClusterScheduler,yarn-client模式为YarnClientClusterScheduler
以上就是如何解析Spark集群和任务执行过程,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/tech/opensource/223292.html