使用python截断Databricks中的增量表
Posted
技术标签:
【中文标题】使用python截断Databricks中的增量表【英文标题】:Truncate delta table in Databricks using python 【发布时间】:2021-05-13 10:58:53 【问题描述】:为 Python 和 SQL 提供了 here 的增量表删除操作。使用 SQL 截断给出了here。但找不到 Python 截断表的文档。 Databricks 中的增量表如何处理?
【问题讨论】:
【参考方案1】:并非所有内容都作为 Python 或 Java/Scala 的函数公开。有些操作是仅限 SQL 的,例如 OPTIMIZE
。如果要截断表,有两种选择:
-
使用
spark.sql("TRUNCATE TABLE <name>")
或
spark.sql("TRUNCATE TABLE delta.`<path>`")
-
在覆盖模式下使用读取 + 写入空数据帧模拟截断:
df = spark.read.format("delta").load("<path>")
df.limit(0).write.mode("overwrite").format("delta").save("<path>")
【讨论】:
以上是关于使用python截断Databricks中的增量表的主要内容,如果未能解决你的问题,请参考以下文章
将 Azure Databricks 增量表迁移到 Azure Synapse SQL 池
Databricks - 从增量表写入流到 orc 文件的读取流仅具有更改