如何使用不同的JavaPairRDD

问题描述 投票:0回答:1

我有两个不同的JavaPairRdd,一个是Key1,值,第二个是key2,value。我试图实现的是合并它们,但只获得具有相同值的项目。

我尝试过以下方法:

 JavaPairRDD<String, String> finalRdd = filteredRdd.intersection(filteredsmallRdd);

其中filteredRdd包含key:Country,value和filteredsmallRdd包含:key:id,value。我需要哪些元素具有相同的值,我认为比较唯一的密钥我得到一个空的解决方案,任何想法如何做到这一点?

java hadoop apache-spark java-pair-rdd
1个回答
0
投票

您可以使用swap将值更改为每个rdd的键,然后执行交集。

JavaPairRDD<String,String> finalRdd = filteredRdd.mapToPair(f -> f.swap()).intersection(filteredsmallRdd.mapToPair(f -> f.swap()));
© www.soinside.com 2019 - 2024. All rights reserved.