如何在Spark中通过并行集合组合两个Arrays?

时间:2016-07-07 23:43:09

标签: apache-spark spark-dataframe

假设我们有两个数组Array1(1,2,3)和Array2(4,5,6)。 我想将它们组合成一个新的Array3((1,4),(2,5),(3,6)) 当我在Spark中尝试时,它变成了。

val data1 = Array(1, 2, 3, 4, 5)
val data2 = Array(2, 3, 4, 5, 6)
val distData1 = sc.parallelize(data1)
val distData2 = sc.parallelize(data2)

val distData3 = distData1 ++ distData2
distData3.foreach(println)

输出

1
2
3
4
5
6

如何正确组合它们?

//更新*

在我的程序中(与示例不同)。我想标签.zip(功能)。我的功能是功能:Array [String]和我的标签也是Array [String]。为什么它不会起作用?

<console>:98: error: type mismatch;
found   : org.apache.spark.rdd.RDD[Array[String]]
required: scala.collection.GenIterable[?]

1 个答案:

答案 0 :(得分:0)

你可以data1.zip(data2),但如果发行版不同,它就无法发挥作用。