使用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中的增量表的主要内容,如果未能解决你的问题,请参考以下文章

Databricks 无服务器计算机 - 写回增量表

将 Azure Databricks 增量表迁移到 Azure Synapse SQL 池

Databricks - 从增量表写入流到 orc 文件的读取流仅具有更改

通过 Python 中的 Databricks api 读取 Databricks 表?

比较两个增量表的架构

截断数据块上的表