【发布时间】:2021-10-07 06:58:35
【问题描述】:
我正在读取特定路径的 csv 文件:
spark.read.format('csv').load('/mnt/path/')
我正在缓存我的数据框以访问损坏的记录enter link description here
data_frame.cache()
在我的笔记本末尾,我想使用data_frame.unpersist()从缓存中删除此路径
然后我正在更改底层数据,例如删除或添加新文件到表路径
但如果我再次读取 csv,spark.read.format('csv').load('/mnt/path/'),spark 没有最后的更改,它仍然显示缓存数据。
这让我觉得数据框并不是真正未缓存的。
唯一可行的方法是重启集群。
我不想使用spark.catalog.clearCache(),因为这会影响缓存集群上运行的所有作业。我只想从当前笔记本中取消缓存特定的数据帧。
任何建议或意见将不胜感激。
编辑:
我没有将它分配给我的数据框。看起来有区别
data_frame = data_frame.unpersist() 和 data_frame.unpersist()
【问题讨论】:
-
我建议完整显示代码
-
也许你可以在这里找到答案stackoverflow.com/a/69272166/3441510?
标签: caching pyspark databricks azure-databricks