Scala 按键减法的函数对立面

Scala 按键减法的函数对立面,scala,apache-spark,Scala,Apache Spark,我有两个RDD,形式为RDD1[K,V1]和RDD2[K,V2]。我希望删除RDD2中不在RDD1中的值。(本质上是每个RDD键上的内部联接,但我不想复制RDD1的值。) 我知道有一种方法subtractByKey与此相反。(保留那些不同的值。)您无法避免在这里使用某种类型的值,因此应用连接和映射值似乎是一种方法。您可以使用: rdd2.join(rdd1.mapValues(_ => None)).mapValues(_._1) 它将值替换为虚拟值(通常您可以跳过它,因为除非值更大,否

我有两个RDD,形式为RDD1[K,V1]和RDD2[K,V2]。我希望删除RDD2中不在RDD1中的值。(本质上是每个RDD键上的内部联接,但我不想复制RDD1的值。)


我知道有一种方法
subtractByKey
与此相反。(保留那些不同的值。)

您无法避免在这里使用某种类型的值,因此应用
连接和映射值似乎是一种方法。您可以使用:

rdd2.join(rdd1.mapValues(_ => None)).mapValues(_._1)
它将值替换为虚拟值(通常您可以跳过它,因为除非值更大,否则在这里没有太多好处):

连接和删除占位符:

_.mapValues(_._1)
_.mapValues(_._1)