【问题标题】:Deleting delta files data from s3 path file从 s3 路径文件中删除增量文件数据
【发布时间】:2023-01-13 14:36:19
【问题描述】:

我正在 AWS s3 中编写“delta”格式文件。 由于一些损坏的数据我需要删除数据,我正在使用可以访问具有删除权限的 AWS S3 路径的企业数据块。

当我尝试使用以下脚本删除时

val p="s3a://bucket/path1/table_name"

import io.delta.tables.*;
import org.apache.spark.sql.functions;

DeltaTable deltaTable = DeltaTable.forPath(spark, p);
deltaTable.delete("date > '2023-01-01'");   

但它并没有删除 s3 路径中的数据,即“date > '2023-01-01'”。 我等了 1 小时但我仍然看到数据,我已经多次运行上面的脚本。

那么这里有什么问题呢?如何解决?

【问题讨论】:

    标签: apache-spark amazon-s3 databricks delta-lake


    【解决方案1】:

    DELETE 操作只删除增量表中的数据,它只是从最新版本中取消引用它。要从存储中物理删除数据,您必须运行 VACUUM 命令:

    检查:https://docs.databricks.com/sql/language-manual/delta-vacuum.html

    【讨论】:

      猜你喜欢
      • 2012-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-19
      • 1970-01-01
      • 1970-01-01
      • 2021-03-18
      相关资源
      最近更新 更多