我编写了一个程序,我在火花流中持久化RDD,这样一旦新的RDD来自火花流,我就可以加入以前缓存的RDD和新的RDD。有没有办法为这个持久的RDD设置生存时间,这样我就可以确保我没有加入我在上一个流循环中已经获得的RDD。
如果有人可以解释并指出RDD中的持久性是如何工作的,那将会很棒,比如当我从spark上下文中获取持久化的RDD时,如何在我目前的RDD中加入这些RDD。
答案 0 :(得分:1)
在Spark Streaming中,Streaming进程生成的RDD的生存时间由spark.cleaner.ttl
配置控制。它默认为无限但是为了使其产生任何效果,我们还需要将spark.streaming.unpersist
设置为false,以便Spark流式传输“让生活”生成的RDD。
请注意,每个RDD ttl都没有。