Spark中的Task,partitioner,executor,cores等相关概念

Spark中的Task,partitioner,executor,cores等相关概念

在这里插入图片描述

说明

  • 输入多个hdfs文件,每个文件有多个block,当spark读取多个文件时,将多个block合并为一个输入分片(InputSplit,它是不能跨文件的),每个输入分片对应一个task,一个task会被分配到某个节点的一个executor上执行,每个executor上有多个cores(一个executor可拥有的最大core数是机器逻辑cpu的数量。),每个core一次执行一个task,执行的结果生成一个rdd的一个partition,partition是指逻辑上将数据分成几个片。

举例

  • 配置的时候要考虑executor和cores的数量。比如rdd有100个partition,你设置了executor的数量为20,每个executor的cores设为10,那么一次就可以完成计算,还有100个core啥都没干,如果executor的数量为10,每个executor的cores设为10,一次就跑完了。

猜你喜欢

转载自blog.csdn.net/lds_include/article/details/89263530