VACUUM - Amazon Athena
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

VACUUM

VACUUM 语句通过删除不再需要的数据文件来对 Apache Iceberg 表进行表维护。

注意

VACUUM 是事务性的,仅支持用于 Athena 引擎版本 3 中的 Apache Iceberg 表。

摘要

要删除 Iceberg 表不再需要的数据文件,请使用以下语法。

VACUUM target_table

建议在 Iceberg 表上运行 VACUUM 语句,以删除不再相关的数据文件,并减少元数据大小和存储消耗。请注意,由于 VACUUM 语句会对 Amazon S3 进行 API 调用,因此对向 Amazon S3 发出的相关请求会产生费用。

警告

如果您运行快照过期操作,则无法对过期快照进行时间旅行操作。

VACUUM 执行以下操作:

  • 删除超过 vacuum_max_snapshot_age_seconds 表属性指定时间的快照。默认情况下,该属性设置为 432000 秒(5 天)。

  • 删除不在保留期限内且超过 vacuum_min_snapshots_to_keep 表属性指定数量的快照。默认 为 1。

    您可以在 CREATE TABLE 语句中指定这些表属性。创建表后,您可以使用 ALTER TABLE SET PROPERTIES 语句对其进行更新。

  • 删除所有由于快照删除而无法访问的元数据和数据文件。您可以通过设置 vacuum_max_metadata_files_to_keep 表属性来配置要保留的旧元数据文件的数量。默认值是 100。

  • 删除超过 vacuum_max_snapshot_age_seconds 表属性中指定时间的孤立文件。孤立文件是表数据目录中不属于表状态的文件。

有关在 Athena 中创建和管理 Apache Iceberg 表的更多信息,请参阅 创建 Iceberg 表管理 Iceberg 表