如何将RDD [Array [Byte]]转换为Array [Byte]

时间:2018-10-30 23:30:55

标签: arrays scala rdd

尝试将function countries() { function Russia(cities1) { var totalpop1 = cities1 * (10 ** 6); //each city has a population of 10^6 people return totalpop1; } function China(cities2) { var totalpop2 = cities2 * (10 ** 6); //each city has a population of 10^6 people return totalpop2; } var result = totalpop1 + totalpop2; return result; } 转换为RDD[Array[Byte]]时,我有些困惑。我首先从以下以Array[Byte]形式定义的元组中提取RDD[Array[Byte]]的地方:

RDD(String, Array[Byte])

然后我真的只能得到数组的第一个元素,如下所示:

val extractArrayFromRDD: RDD[Array[Byte]] = rdd.map(t => t._2)

但是,我确实确实需要与整个Array一起返回,但是我似乎没有找到解决方法。有想法吗?

谢谢

1 个答案:

答案 0 :(得分:1)

不确定我是否正确理解了您,但是如果您想收集自己的RDD,可以使用{p> 1来获取它

Array

应返回rdd.collect() 。而且,如果要将数组组合成Array[Array[Byte]],则可以使用Array[Byte]或任何适合您的需求。