在文件中写下大量的年龄

时间:2016-10-23 08:27:19

标签: scala apache-spark spark-streaming spark-dataframe

我有一个大小为200的数组A。[i] = 1,000,000,000意味着我需要写入10亿个值为i的文件。例如,A = [2,3,1,...],输出文件应该是这样的

0
0
1
1
1
2
2
...

鉴于此类数组A,如何使用Spark输出到文件(part-r-00000part-r-00001part-r-00002等)。我正在使用带有Scala的Spark 2.0.1。

谢谢!

1 个答案:

答案 0 :(得分:0)

我可能会使用自动 saveAsTextFile()方法来解决这个问题,该方法默认执行您想要的操作,拆分为不同的文件,每个RDD一个文件。

Save the RDD to files

文件的最大大小取决于所使用的文件系统,因此虽然不是100%,但我怀疑是否有自动方式。

根据该示例中的代码,如果您可以从系统调用中获取该信息,我将根据条目数和您对文件系统的了解,在调用 .repartition()之前计算NUM_PARTITIONS ,或者您希望默认为某些值。

相关问题