Spark任务提交底层原理

本文详细介绍了Apache Spark的运行机制及调度管理流程,包括驱动器(driver)的作用、RDD的创建与转换、有向无环图(DAG)的生成与划分、Stage的构成条件以及TaskSet与Task的具体运作方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

                                      Spark运行机制

1.驱动器(driver)应用程序的入口,执行用户编写的用来创建的SparkContext,创建RDD以及RDD之间的转换操作的代码(触发action)

2.RDD的创建和RDD之间的转换就是有向无环图(DAG),将有向无环图发送给DAGScheduler

3.DAGScheduler通过血统(款依赖,窄依赖)划分stage,并将stage组合成TaskSet(任务数)发送给TaskScheduler

4.通过TaskScheduler将TaskSet转换为Task任务,将任务添加到任务队列中提交给SchedulerBackend进行资源分配和任务调度

5.调度器给Task分配Executor,执行任务

                                    Spark调度管理

1.job(作业):有一个RDD Action生成的一个或多个阶段的所组成的 一次计算作业

2.TaskSet(任务集):由一组关联的,但互相之间没有shuffle依赖关系的任务所组成的任务集

3.Stage(阶段):如果遇到shuffle阶段结束

4.Task(任务):每个分区数据的最小处理单元

5Application(应用程序):Spark应用程序,有一个或多个作业组成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值