如何直接写入HDFS文件而不是在python spark中使用saveAsTextFile?

时间:2015-05-21 05:47:24

标签: python apache-spark hdfs pyspark

我已经达到某种程度,我得到了groupByKey操作的结果。现在,我想使用(key, value)作为名称并将k作为其内容,将每个v对写入不同的文件。

首先,我尝试在驱动程序中收集这些结果以便使用open()并写入本地文件,但由于缓冲区溢出而失败,因为结果的大小非常大。

然后我尝试过滤那些(key, value)对来制作新的RDD,以便为每个新的RDD使用saveAsTextFile,但它似乎对网络通信来说太慢了。

现在我想如果我可以在foreach RDD上使用groupByKey操作并在每次迭代中直接写入HDFS文件,那么它应该更快,但我不知道要引用哪个函数在python API中。谁能告诉我一些例子或者告诉我另一种方法来实现我在pyspark的目标?

在SO上有一个类似的问题here,但是这个解决方案是在scala中,而我想在python中解决它,因为我发现没有办法直接与pyspark中的HDFS通信。

0 个答案:

没有答案
相关问题