我正在使用 Spark 将数据写入分区。给定一个包含两列的数据集 (foo, bar)
, 如果我这样做 df.write.mode("overwrite").format("csv").partitionBy("foo").save("/tmp/output")
,我得到一个输出
/tmp/output/foo=1/X.csv
/tmp/output/foo=2/Y.csv
...
但是,输出 CSV 文件仅包含
bar
的值。 ,不是 foo
.我知道 foo
的值已在目录名称 foo=N
中捕获,但是否也可以包含 foo
的值?在 CSV 文件中?
最佳答案
仅当您以不同名称制作副本时:
(df
.withColumn("foo_", col("foo"))
.write.mode("overwrite")
.format("csv").partitionBy("foo_").save("/tmp/output"))
关于apache-spark - Spark : can you include partition columns in output files?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48190107/