17-spark任务划分

(1)Application:初始化一个SparkContext即生成一个Application
(2)Job:一个Action算子就会生成一个Job
(3)Stage:Stage等于宽依赖的个数+1
(4)Task:一个Stage阶段中,最后一个RDD的分区个数就是Task的个数
在这里插入图片描述
1.程序从main进入到方法中,代码读到sc,会初始化生成一个Application应用。
2.接着执行代码,执行到第一个collect行动算子,会形成一个Job。
3.Job会启动DAGScheduler。
4.DAGScheduler先找到最后一个RDD,然后往前找宽依赖,找到宽依赖,就切开,创建前面的ScheduleMapStage,创建宽依赖后面的是ResultStage。(Stage的个数=宽依赖+1)
5.Task的个数就是在Stage阶段中,最后一个RDD分区的个数相加。
6.任务划分完成后,由TaskSchedule把Task发往对应的Executor端执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值