spark动态分区覆盖多个列产生空白输出

rlcwz9us  于 2021-05-27  发布在  Spark
关注(0)|答案(1)|浏览(505)

我在hdp2.6.5集群和hadoop2.7.5上使用spark2.3.0。我今天晚上遇到一个问题。我正在我的一个验证脚本中使用下面的动态分区覆盖。

DF.coalesce(1).write.partitionBy("run_date","dataset_name").mode("overwrite").csv("/target/path")

但它只是用\u success文件写入空白输出。我在spark会话中设置了以下配置。

.config("spark.sql.sources.partitionOverwriteMode","dynamic")

如果我从.partitionby()中删除任何一列,这都可以正常工作
我想知道为什么它不写Dataframe输出到csv与动态分区的多列!
如果有人能在这件事上帮我,那就太好了。

tjrkku2a

tjrkku2a1#

这个问题似乎是hdp2.6.5的一个bug,因为使用多列动态分区覆盖的相同场景在hdp3.1和spark2.3.2中工作得非常好。

相关问题