如何合并元素两个RDD

MIN*_* Sk 0 python apache-spark rdd pyspark

假设我有两个RDD

第一

1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)

第二

6
7
8
9
10
Run Code Online (Sandbox Code Playgroud)

新的RDD将是

1 6
2 7
3 8
4 9
5 10
Run Code Online (Sandbox Code Playgroud)

所以,这基本上是元素明智的合并...我们假设两个RDD具有相同的大小.

Mat*_*zyk 5

您可以使用Spark的zip功能.根据文件:

>>> x = sc.parallelize(range(0,5))
>>> y = sc.parallelize(range(1000, 1005))
>>> x.zip(y).collect()
[(0, 1000), (1, 1001), (2, 1002), (3, 1003), (4, 1004)]
Run Code Online (Sandbox Code Playgroud)

请注意,此函数假设两个RDD中的分区数相同且元素数相同.