如何在Spark Java中使用用户定义的文件名将数据框另存为文本文件

问题描述 投票:0回答:1

我正在尝试将数据框保存到特定位置。

                        successDF.toJavaRDD().saveAsTextFile(successFilePath);

在这里,successFilePath是:/hdfs/tmp/20200102/04.dat

我需要将文件名保存为04.dat的数据,其中20200102和04将作为参数来使用

但是该过程将创建多个文件,如下所示:

Folder: /hdfs/tmp/20200102/04.dat
Files:
._SUCCESS.crc
.part-00000.crc
_SUCCESS
part-00000

我的要求是,输出文件应在/ hdfs / tmp / 20200102中创建,并且文件夹下的文件名应为1个文件:04.dat

N.B。我正在使用Spark Java

请提出建议

dataframe apache-spark hadoop filesystems rdd
1个回答
0
投票

这里要求将数据从RDD的所有分区收集到单个RDD,然后另存为输出。

代码看起来像

successDF.toJavaRDD().coalesce(1, shuffle = true).saveAsTextFile(successFilePath);
© www.soinside.com 2019 - 2024. All rights reserved.