【发布时间】:2016-02-01 07:10:23
【问题描述】:
spark-submit 命令中使用的executor-cores 和spark.executor.cores 有什么区别吗?
由于 GC 开销内存错误,我的工作失败了,所以我正在尝试增加内核和内存设置。
我正在处理的总容量是两个文件中的 50 M 条记录。
【问题讨论】:
spark-submit 命令中使用的executor-cores 和spark.executor.cores 有什么区别吗?
由于 GC 开销内存错误,我的工作失败了,所以我正在尝试增加内核和内存设置。
我正在处理的总容量是两个文件中的 50 M 条记录。
【问题讨论】:
spark-submit 命令中使用的executor-cores 标志只需在 Spark 配置上设置 spark.executor.cores 设置。所以它们具有相同的效果:)
您可以尝试几件事:
1) 你已经用 YARN 标记了这个问题,所以如果你发现你没有使用所有的内核,你应该看看Apache Hadoop Yarn - Underutilization of cores
2) 当您通过显式设置 spark.yarn.executor.memoryOverhead 增加内存开销时,YARN 上的许多内存问题都得到了解决。它将默认为max(386MB, 0.10* executorMemory),这通常是不够的。
【讨论】: