说明
与 leftOuterJoin() 相反,返回的RDD是 key-value:以 右侧 RDD 的key为主 ,将相同的key的value连接在一起,组成元祖,该元祖作为value
注意
以 右侧 RDD 的key为主
例子
val sparConf = new SparkConf().setMaster("local[*]").setAppName("RDD")
val sc = new SparkContext(sparConf)
val rdd1:RDD[(String,Int)] = sc.makeRDD(List(("李雷",182),("韩梅梅",169),("lili",170)))
val rdd2:RDD[(String,String)] = sc.makeRDD(List(("lucy","女"),("李雷","男"),("韩梅梅","女")))
val resRDD:RDD[(String, (Option[Int],String))]=rdd1.rightOuterJoin( rdd2)
resRDD.collect().foreach(println)
sc.stop()
执行结果:
(lucy,(None,女))
(李雷,(Some(182),男))
(韩梅梅,(Some(169),女))