[英]how to merge 2 different rdd in spark using scala
我正在嘗試將2個rdds合並為一個。 如果我的rdd1由2個元素的2條記錄組成,則都是字符串ex:key_A:value_A和Key_B:value_B
rdd2還由2個元素的1條記錄組成,它們都是字符串key_C:value_c
我的最終rdd如下所示:key_A:value_A,Key_B:value_B,key_C:value_c
我們可以使用rdd的並集方法,但是不起作用。 請在使用2 rdds的並集時提供幫助,如果2個不同的rdd的行包含相同的no元素,或者大小可以不同。
嘗試加入:
join(otherDataset, [numTasks])
在(K,V)和(K,W)類型的數據集上調用時,將返回(K,(V,W))對的數據集,其中每個鍵都有所有成對的元素。 通過leftOuterJoin,rightOuterJoin和fullOuterJoin支持外部聯接。
union
正在工作。
示例代碼為:
val rdd = sparkContext.parallelize(1 to 10, 3)
val pairRDD = rdd.map { x => (x, x) }
val rdd1 = sparkContext.parallelize(11 to 20, 3)
val pairRDD1 = rdd1.map { x => (x, x) }
pairRDD.union(pairRDD1).foreach(tuple => {
println(tuple._1)
println(tuple._2)
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.