Apache Spark:内核数量与执行程序数量
我试图了解在YARN上运行Spark作业时内核数与执行程序数之间的关系。 测试环境如下: 数据节点数:3 数据节点机器规格: CPU:Core i7-4790(内核数:4,线程数:8) 内存:32GB(8GB x 4) 硬盘:8TB(2TB x 4) 网络:1Gb Spark版本:1.0.0 Hadoop版本:2.4.0(Hortonworks HDP 2.1) Spark作业流程:sc.textFile->过滤器->映射->过滤器-> mapToPair-> reduceByKey->映射-> saveAsTextFile 输入数据 类型:单个文本文件 大小:165GB 线数:454,568,833 输出量 第二个过滤器之后的行数:310,640,717 结果文件的行数:99,848,268 结果文件的大小:41GB 该作业使用以下配置运行: --master yarn-client --executor-memory 19G --executor-cores 7 --num-executors 3 (每个数据节点的执行程序,使用的内核数最多) --master yarn-client --executor-memory 19G --executor-cores 4 --num-executors 3 (减少的内核数) --master yarn-client …