1

我是 pyspark 的新手,正在寻找动态覆盖增量分区。从在线可用的其他资源中,我可以看到 spark 通过将以下 conf 设置为“动态”来支持动态分区

spark.conf.set("spark.sql.sources.partitionOverwriteMode", "动态")

但是,当我尝试用数据框覆盖 partitioned_table 时,pyspark(databricks)中的以下代码行会覆盖整个表而不是增量文件上的单个分区。

data.write.insertInto("partitioned_table", overwrite = True)

我确实遇到了使用 Hive 外部表的选项,但在我的情况下它并不直接,因为 partitioned_table 是基于 Delta 文件的。

请让我知道我在这里缺少什么。提前致谢!

4

1 回答 1

3

查看此问题和有关增量表动态覆盖的详细信息:https ://github.com/delta-io/delta/issues/348

您可以使用replaceWhere

于 2020-06-11T03:09:04.123 回答