在 deltaLake table 上配置 TTL
Configuring TTL on a deltaLake table
我正在寻找一种方法将 ttl(生存时间)添加到我的 deltaLake table 以便其中的任何记录在固定的跨度后自动消失,我还没有找到任何东西具体的,有人知道是否有解决方法吗?
很遗憾,Delta Lake tables 中没有名为 TTL (time-to-live) 的配置。
您可以删除不再被 Delta table 引用且早于保留阈值的文件,方法是 运行 在 table 上执行 vacuum 命令。真空不会自动触发。文件的默认保留阈值为 7 天。
Delta Lake 为读取提供快照隔离,这意味着 运行 OPTIMIZE 是安全的,即使其他用户或作业正在查询 table。然而,最终,您应该清理旧快照。
您可以通过 运行使用 VACUUM 命令来执行此操作:
VACUUM events
您可以使用 RETAIN HOURS 选项控制最新保留快照的期限:
VACUUM events RETAIN 24 HOURS
有关有效使用 VACUUM 的详细信息,请参阅 Vacuum。
我正在寻找一种方法将 ttl(生存时间)添加到我的 deltaLake table 以便其中的任何记录在固定的跨度后自动消失,我还没有找到任何东西具体的,有人知道是否有解决方法吗?
很遗憾,Delta Lake tables 中没有名为 TTL (time-to-live) 的配置。
您可以删除不再被 Delta table 引用且早于保留阈值的文件,方法是 运行 在 table 上执行 vacuum 命令。真空不会自动触发。文件的默认保留阈值为 7 天。
Delta Lake 为读取提供快照隔离,这意味着 运行 OPTIMIZE 是安全的,即使其他用户或作业正在查询 table。然而,最终,您应该清理旧快照。
您可以通过 运行使用 VACUUM 命令来执行此操作:
VACUUM events
您可以使用 RETAIN HOURS 选项控制最新保留快照的期限:
VACUUM events RETAIN 24 HOURS
有关有效使用 VACUUM 的详细信息,请参阅 Vacuum。