帮忙,我有两个RDD,想要合并成一个RDD。以下是我的代码。
val us1 = sc.parallelize(Array(("3L"), ("7L"),("5L"),("2L")))
val us2 = sc.parallelize(Array(("432L"), ("7123L"),("513L"),("1312L")))
帮忙,我有两个RDD,想要合并成一个RDD。以下是我的代码。
val us1 = sc.parallelize(Array(("3L"), ("7L"),("5L"),("2L")))
val us2 = sc.parallelize(Array(("432L"), ("7123L"),("513L"),("1312L")))
RDD.union
,这些不需要基于键进行连接。 Union 本身并没有实际作用,因此它的开销很低。请注意,合并后的 RDD 将具有原始 RDD 的所有分区,因此您可能需要在联合后进行 coalesce 操作以减少分区数。val x = sc.parallelize(Seq( (1, 3), (2, 4) ))
val y = sc.parallelize(Seq( (3, 5), (4, 7) ))
val z = x.union(y)
z.collect
res0: Array[(Int, Int)] = Array((1,3), (2,4), (3,5), (4,7))
API
def++(other: RDD[T]): RDD[T]
返回此RDD和另一个RDD的并集。
def union(other: RDD[T]): RDD[T]
返回此RDD和另一个RDD的并集。任何相同的元素将出现多次(使用.distinct()来消除它们)。