我想把spark写进s3上的一个文件。做这样的事
dataframe.repartition(1)
.write
.option("header", "true")
.option("timestampFormat", "yyyy/MM/dd HH:mm:ss ZZ")
.option("maxRecordsPerFile", batchSize)
.option("delimiter", delimiter)
.option("quote", quote)
.format(format)
.mode(SaveMode.Append)
.save(tempDir)
现在,在编写之前,我强制分区为1(我也尝试了 coalesce
),我希望编写一个输出文件。但事实并非如此,我拥有的文件数量相当于写之前的分区数量。
如何确保s3上只有一个输出文件?
1条答案
按热度按时间6xfqseft1#
结果发现
maxRecordsPerFile
造成了这一切,我得到了最后一份文件。