一旦火花作业成功完成,持久的Spark RDD会发生什么?
我们是否还需要明确地将一些代码写入unpersist?
或
每个持久存在的RDD会自动发生无人值守吗?
答案 0 :(得分:2)
我们是否还需要明确地将一些代码写入unpersist?
是
每个持久存在的RDD会自动发生无人值守吗?
不,你需要通过调用
来明确地做到这一点
RDD.unpersist()
或
df1.unpersist()
在涉及持久/缓存df的最后一个操作之后,总是在谱系结束后取消df。
答案 1 :(得分:1)
spark的官方文档说
Spark会自动监视每个节点上的缓存使用情况,并以最近最少使用(LRU)的方式删除旧数据分区。如果您想手动删除RDD而不是等待它从缓存中删除,请使用RDD.unpersist()方法。
请查看http://spark.apache.org/docs/latest/programming-guide.html#removing-data