Memory 在Spark中,工作完成后,内存中还剩下什么?

Memory 在Spark中,工作完成后,内存中还剩下什么?,memory,apache-spark,rdd,Memory,Apache Spark,Rdd,我使用./bin/sparkshell进行了一些实验,发现了以下事实。当运行作业(转换+操作)时,我注意到顶部的内存使用情况。例如,对于5G文本文件,我做了一个简单的filter()和count()。作业完成后,顶部窗口中有7g标记为res。我有100g内存,并将执行器内存设置为50g 有人知道7g是什么吗 由于Spark在JVM上运行,仅仅因为Spark可能不再有对某些内存的任何引用,并不意味着该内存将被释放。即使触发了垃圾回收,JVM也可能不会将内存释放回操作系统(这由-XX:MaxHeap

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


有人知道7g是什么吗

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