如何解决如何写入与Spark分区相同数量的文件
我正在尝试从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上只有一个输出文件?
解决方法
事实证明,maxRecordsPerFile
导致了此问题,将其删除后得到了一个最终文件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。