改变" spark.memory.storageFraction"对存储内存'没有影响。 “执行者”选项卡中的列

时间:2018-05-28 11:34:42

标签: apache-spark apache-spark-sql

我尝试使用 spark.memory.storageFraction 参数来减少为缓存节省的内存量。 但是,将其设置为0.1,0.5或甚至0.9并不会显示"存储" Executors选项卡上的列:

enter image description here

更改 spark.memory.fraction 参数是我在此列中看到更改的唯一方法,但这不是减少存储空间的方法。

我使用spark 1.6.1并将 spark.memory.useLegacyMode 设置为false。

1 个答案:

答案 0 :(得分:0)

  

我' m(...)将spark.memory.useLegacyMode设置为false。

这是你的问题。具体做法是:

  

spark.memory.useLegacyMode false

     

是否启用Spark 1.5及之前使用的旧式内存管理模式。传统模式将堆空间严格划分为固定大小的区域,如果未调整应用程序,可能会导致过多的溢出。除非已启用,否则不会读取以下不推荐使用的内存分数配置:spark.shuffle.memoryFraction   spark.storage.memoryFraction   spark.storage.unrollFraction

换句话说,您必须启用传统模式才能使用这些属性。