spark中的哪个功能用于通过键组合两个RDD

发布于 2021-01-29 16:31:04

让我们说我有以下两个RDD,具有以下密钥对值。

rdd1 = [ (key1, [value1, value2]), (key2, [value3, value4]) ]

rdd2 = [ (key1, [value5, value6]), (key2, [value7]) ]

现在,我想通过键值将它们连接起来,例如,我想返回以下内容

ret = [ (key1, [value1, value2, value5, value6]), (key2, [value3, value4, value7]) ]

如何使用Python或Scala在火花中执行此操作?一种方法是使用连接,但是连接会在该元组内部创建一个元组。但是我只希望每个键值对只有一个元组。

关注者
0
被浏览
42
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我将两个RDD和一个reduceByKey合并以合并值。

    (rdd1 union rdd2).reduceByKey(_ ++ _)
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看