Spark:saveAsTextFile()仅在写入本地文件系统时创建SUCCESS文件而不创建零件文件

时间:2017-06-14 05:39:08

标签: hadoop apache-spark

我正在使用以下命令将RDD写入文件:

rdd.coalesce(1).saveAsTextFile(FilePath)

当FilePath是HDFS路径(hdfs://node:9000/folder/)时,一切正常。

当FilePath是本地路径(file:///home/user/folder/)时,一切似乎都有效。将创建输出文件夹,并且还存在SUCCESS文件。

但是我没有看到任何包含输出的part-00000文件。没有其他文件。火花控制台输出中也没有错误。

我还尝试在调用saveAsTextFile()之前调用RDD上的collect,将777 permission提供给输出文件夹,但没有任何工作。

请帮忙。

2 个答案:

答案 0 :(得分:1)

仅在使用local母版

时保存到本地制作效果

答案 1 :(得分:0)

为了将Spark对象保存到本地驱动程序文件系统中,您需要使用collect(),然后自己打开一个文件以将该集合写入其中。

否则,例如,如果您作为YARN作业的一部分运行,则应查看Spark作业运行的节点管理器的本地文件系统