Databricks 在deltaLake表上配置TTL

Databricks 在deltaLake表上配置TTL,databricks,azure-databricks,delta-lake,Databricks,Azure Databricks,Delta Lake,我正在寻找一种方法,将ttl(生存时间)添加到我的deltaLake表中,以便在固定跨度后,其中的任何记录都会自动消失,我还没有找到任何具体的方法,有人知道是否有解决方法吗?不幸的是,Delta Lake表中没有称为ttl(生存时间)的配置 通过在增量表上运行vacuum命令,可以删除不再被增量表引用且早于保留阈值的文件。真空不会自动触发。文件的默认保留阈值为7天 Delta Lake为读取提供了快照隔离,这意味着即使在其他用户或作业查询表时运行OPTIMIZE也是安全的。不过,最终您应该清理旧

我正在寻找一种方法,将ttl(生存时间)添加到我的deltaLake表中,以便在固定跨度后,其中的任何记录都会自动消失,我还没有找到任何具体的方法,有人知道是否有解决方法吗?

不幸的是,Delta Lake表中没有称为ttl(生存时间)的配置

通过在增量表上运行vacuum命令,可以删除不再被增量表引用且早于保留阈值的文件。真空不会自动触发。文件的默认保留阈值为7天

Delta Lake为读取提供了快照隔离,这意味着即使在其他用户或作业查询表时运行OPTIMIZE也是安全的。不过,最终您应该清理旧快照

可以通过运行真空命令来执行此操作:

VACUUM events
您可以使用“保留小时数”选项来控制最新保留快照的时间:

VACUUM events RETAIN 24 HOURS

有关有效使用真空的详细信息,请参阅。

谢谢您的回答,我们知道真空,但我们真正喜欢的是ttl,我想我们必须创建一个可以在后台持续运行和工作的作业