文件更新时的Spark JavaPairRDD行为

时间:2015-08-20 06:57:45

标签: apache-spark spark-streaming

我有一个用例,我在一个文件和流数据之间加入数据。 为此,我将文件中的数据作为JavaPairRDD读取并缓存它。

但问题是该文件将在3-4小时内定期更新。 现在我的疑问是我是否必须再次读取文件并重新创建JavaPairRDD以反映文件中的更改,或者是否已经由Spark处理,即每当文件更新时,是否重新创建了RDD?

1 个答案:

答案 0 :(得分:1)

Spark中的RDD设计为不可变的,如果基础数据发生变化,RDD中的值将不会更改,除非它是未缓存/未加载/未检查的。一般情况下,Spark假定RDD的后备数据没有变化,因此您可能更好地创建一个新的RDD(或将两者视为流)。