从这个博客中,我了解到每个执行器内都有保留的内存,相当于恒定的300MB。在 Spark 1.6 的文章中,该保留内存的值据说是可变的,但需要重新编译 Spark。在 Spark 配置 docs 中,有
spark.executor.memoryOverhead
,此配置是从 Spark 2.3 开始引入的。这个配置是否决定了Spark 1.6+版本中很难更改的保留内存的大小?如果不是的话这个配置是用来做什么的?
参考资料: https://medium.com/walmartglobaltech/decoding-memory-in-spark-parameters-that-are-often-confused-c11be7488a24 “spark.yarn.executor.memoryOverhead”和“spark.memory.offHeap.size”之间的区别