我有两个RDD。

rdd1 =(字符串,字符串)

key1, value11
key2, value12
key3, value13


rdd2 =(字符串,字符串)

key2, value22
key3, value23
key4, value24


我需要用来自rdd1和rdd2的合并行形成另一个RDD,输出应如下所示:

key2, value12 ; value22
key3, value13 ; value23


因此,基本上只不过是取rdd1和rdd2的键的交集然后连接它们的值而已。
**值应按顺序排列,即value(rdd1)+ value(rdd2)且不能取反。

最佳答案

我认为这可能是您要寻找的:

join(otherDataset, [numTasks])


在(K,V)和(K,W)类型的数据集上调用时,返回(K,(V,W))对的数据集,其中每个键都有所有成对的元素。通过leftOuterJoin,rightOuterJoin和fullOuterJoin支持外部联接。

See the associated section of the docs

08-03 15:50