SparkContext.union 与 RDD.union

时间:2023-01-27 15:02:20

RDD.union,和SparkContext.union都可以将多个RDD聚合成一个UnionRDD。

但不同的是,RDD.union在每次操作时,会创建一个新的数据集合,生成新的RDD,新的RDD和原有RDD血统不一致。

SparkContext.union可以将所有需要聚合的RDD,直接生成一个新的聚合RDD,将原有数据聚合后仅生成一个新的RDD。

SparkContext.union的特性,可以避免大量RDD利用Reduce做union时导致的溢出的错误。同时提高效率。