【发布时间】:2021-04-10 04:02:00
【问题描述】:
我想将表 metrics 附加到现有的 CSV 文件中。我使用下面的代码:
metrics.coalesce(1)
.write
.option("header", "true")
.option("sep",",")
.mode("Append")
.csv("data/outputs.csv}")
每次运行下面的代码块时,都会在 data/outputs.csv 中创建一个新文件 .part-00000-{xxxxxx-xxxxx......}.csv(其中 outputs.csv 是一个文件夹,而不是 CSV 文件)。
有没有办法始终将表格附加到同一个 CSV 文件中而不是创建新的 .csv 文件?以及任何方式来定义这个 CSV 的最终名称,而不是使用 .part-00000-{xxxxxx-xxxxx......}.csv 格式?
我尝试使用保存模式附加选项 (.mode(SaveMode.Append)) 获得相同的复制结果。
【问题讨论】:
-
由于 spark 分布式特性,没有直接的方法可以做到这一点,但您可以在使用 spark 保存之后执行此操作。请参阅此链接以获取参考:stackoverflow.com/questions/40792434/…。我认为你不应该这样做,除非你有一个无法解决的用例。
标签: scala apache-spark