spark.yarn.executor.memoryOverhead
在使用 YARN 的 Spark 作业中应该分配给 App,还是只是分配给最大值?
spark.yarn.executor.memoryOverhead
在使用 YARN 的 Spark 作业中应该分配给 App,还是只是分配给最大值?
spark.yarn.executor.memoryOverhead
只是最大值。目标是将开销计算为实际执行器内存的百分比,由RDD和DataFrames使用。
--executor-memory/spark.executor.memory
控制执行程序堆大小,但JVM也可以在堆外使用一些内存,例如用于interned Strings和direct byte buffers。
spark.yarn.executor.memoryOverhead
属性的值会加到executor memory上,以确定每个executor向YARN请求完整内存所需。默认为max(executorMemory * 0.10,最小值为384)。
根据spark.executor.memory
属性和spark.yarn.executor.memoryOverhead
定义的overhead,执行器将使用内存分配。