spark.executer.memoryOverhead和spark.memory.offHeap.size之间的差异



当我在Spark配置中搜索堆外时,有两个相关的属性(spark.executor.memoryOverheadspark.memory.offHeap.size(,我不确定这两者之间的关系。

如果我启用spark.memory.offHeap.enabledspark.memory.offHeap.size会是spark.executor.memoryOverhead的一部分吗?或者这两种类型的堆外存储器是独立的(因此总堆外存储器为两者之和(

请在此处查看我的完整答案:https://stackoverflow.com/a/61723456/6470969

简短回答:从当前Spark版本(2.4.5(开始,如果指定spark.memory.offHeap.size,也应该将此部分添加到spark.executor.memoryOverhead中。例如,您将spark.memory.offHeap.size设置为500M,并且您有spark.executor.memory=2G,那么默认的spark.executor.memoryOverheadmax(2*0.1, 384)=384M,但您最好将memoryOverhead增加到384M+500M=884M

最新更新