更新文件时激发 JavaPairRDD 行为
Spark JavaPairRDD behaviour when file gets updated
我有一个用例,我在一个文件和流数据之间加入数据。
为此,我将文件中的数据读取为 JavaPairRDD 并将其缓存。
但问题是该文件将在 3-4 小时内定期更新。
现在我的疑问是我是否必须再次读取文件并重新创建 JavaPairRDD 以反映文件中的更改,或者它是否已由 Spark 处理,即每当文件更新时是否重新创建 RDD?
Spark 中的 RDD 被设计为不可变的,如果底层数据发生变化,RDD 中的值将不会改变,除非它是 uncached/unpersisted/uncheckpointed。一般来说,Spark 假定 RDD 的支持数据不会改变,因此您最好创建一个新的 RDD(或将两者都视为流)。
我有一个用例,我在一个文件和流数据之间加入数据。 为此,我将文件中的数据读取为 JavaPairRDD 并将其缓存。
但问题是该文件将在 3-4 小时内定期更新。 现在我的疑问是我是否必须再次读取文件并重新创建 JavaPairRDD 以反映文件中的更改,或者它是否已由 Spark 处理,即每当文件更新时是否重新创建 RDD?
Spark 中的 RDD 被设计为不可变的,如果底层数据发生变化,RDD 中的值将不会改变,除非它是 uncached/unpersisted/uncheckpointed。一般来说,Spark 假定 RDD 的支持数据不会改变,因此您最好创建一个新的 RDD(或将两者都视为流)。