更改DataFrame.write()的输出文件名前缀

更改DataFrame.write()的输出文件名前缀,第1张

更改DataFrame.write()的输出文件名前缀

使用任何标准输出格式(例如Parquet)时,都不能更改“ part”前缀。请参阅ParquetRelation
源代码中的以下片段:

private val recordWriter: RecordWriter[Void, InternalRow] = {  val outputFormat = {    new ParquetOutputFormat[InternalRow]() {      // ...      override def getDefaultWorkFile(context: TaskAttemptContext, extension: String): Path = {        // ..        //  prefix is hard-pred here:        new Path(path, f"part-r-$split%05d-$uniqueWriteJobId$bucketString$extension")    }  }}

如果确实必须控制零件文件名,则可能必须实现自定义FileOutputFormat并使用Spark的其中一个接受FileOutputFormat类的保存方法(例如saveAsHadoopFile)。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5487825.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存