pyspark 需要释放未使用的Spark Dataframe 所占用的内存

qgzx9mmu  于 2022-11-21  发布在  Spark
关注(0)|答案(1)|浏览(395)

我没有缓存或持久化spark Dataframe 。如果我不得不在同一会话中通过聚合和修改 Dataframe 的内容来做许多额外的事情,作为过程的一部分,那么何时以及如何从内存中释放初始 Dataframe ?
示例:
我加载了一个包含1000万条记录的 Dataframe DF1。然后我对该 Dataframe 进行了一些转换,从而创建了一个新的 Dataframe DF2。然后我对DF2执行了一系列10个步骤。在整个过程中,我不再需要DF1了。我怎么能确定DF1不再存在于内存中并影响性能呢?有没有什么方法可以直接从内存中删除DF1?或者DF1是否会根据最近最少使用(LRU)方法自动删除?

whlutmcx

whlutmcx1#

这不是spark的工作方式。 Dataframe 是懒惰的......存储在内存中的只有结构和你对 Dataframe 所做的转换列表。数据并不存储在内存中(除非你缓存它们并应用一个动作)。
因此,我看不出你的问题有甚么问题。

相关问题