spark中job、stage、task、partition、executor概念理解以及分区数深入探究

本文详细介绍了Spark中的核心概念,包括Job、Stage、Task、Partition和Executor,并探讨了Partition分区数的重要性。通过实例解释了不同方式生成RDD时的分区数,并提供了关于如何合理设置分区数以优化资源利用的建议。
摘要由CSDN通过智能技术生成

概念

1. job定义:

       我们都知道,在spark rdd中,有action、transform操作,当真正触发action时,才真正执行计算,此时产生一个job任务。

2. stage定义:

       以shuffle为界,当在一个job任务中涉及shuffle操作时,会进行stage划分,产生一个或多个stage。

3. task定义:

      一个stage可能包含一个或者多个task任务,task任务与partition、executor息息相关,即并行度。

4. partition定义:

     partition个数即rdd的分区数,不同的数据源读进来的数据分区数默认不同,可以通过repartition进行重分区操作。

5. executor定义:

     executor运行在work上,一个work可以运行一个或多个executor,一个executor可以运行一个或者多个task(取决于executor的core个数,默认是一个task占用一个core,即有多少个core就可以启动多少个task任务)

6. 各个之间的关系图:

  1. 一个work有一个或多个executor
  2. 一个executor有一个或者多个task&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值