我有两个RDD; rdd1 = RDD[(String, Array[String])]
和rdd2 = RDD[String]
。
我想删除所有在rdd2中找不到密钥的rdd1。
提前谢谢!
答案 0 :(得分:1)
您可以进行内连接,但首先必须使第二个RDD成为对rdd。
val rdd1: RDD[(String, Array[String])] = ???
val rdd2: RDD[String] = ???
val asPairRdd: RDD[(String, Unit)] = rdd2.map(s => (s, ()))
val res: RDD[(String, Array[String])] = rdd1.join(asPairRdd).map{
case (k, (v, dummy)) => (k, v)
}