Spark rdd1和rdd2做内部连接,新值是rdd1中的值

2024-10-05 14:27:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个RDD rdd1rdd2

rdd1 = [(key1,value11), (key2,value12)]
rdd2 = [(key1, value21), (key3, value22)]

现在我要用rdd1rdd2做一个内部连接,并给出这样一个示例结果

rdd_join = [(key1,value11)]

在sql中是这样的

SELECT rdd1.key,rdd1.value 
FROM rdd1
INNER JOIN rdd2
WHERE rdd1.key = rdd2.key

你知道吗?你知道吗


Tags: key示例sqlkey2key1joinrddkey3
1条回答
网友
1楼 · 发布于 2024-10-05 14:27:13
joined_rdd = rdd1.join(rdd2)

但这不会给你你想要的,而是

[joined_rdd = [(key1, (value11, value21))]

你上面的例子不是一个连接。您可以通过joined_rdd.map(lambda l: [l[0], l[1][0]])或首先使用filter而不是join从连接的数据中获得所需的内容

相关问题 更多 >