在Spark中,Job完成后内存中还剩下什么?

时间:2015-06-12 18:12:18

标签: memory apache-spark rdd

我使用./bin/spark-shell进行一些实验并找出以下事实。运行作业(转换+操作)时,我注意到顶部中的内存使用情况。例如,对于5G文本文件,我做了一个简单的filter()和count()。作业完成后, top 窗口中有7g标记为res。我有100g内存并将执行程序内存设置为50g。

有谁知道7g是什么?

1 个答案:

答案 0 :(得分:2)

由于Spark在JVM上运行,因为Spark可能不再对某些内存有任何引用并不意味着将释放该内存。即使已经触发了垃圾收集,JVM也可能不会将内存释放回操作系统(这由-XX:MaxHeapFreeRatio控制)。