删除孤立文件 - AWS Glue

删除孤立文件

AWS Glue Data Catalog 允许删除 Iceberg 表中的孤立文件。孤立文件是指存在于指定表位置下的 Amazon S3 数据来源中,未被 Iceberg 表元数据跟踪,且超过配置的时效阈值的未引用文件。这些孤立文件可能因压缩、分区删除或表重写等操作失败而不断堆积,占用不必要的存储空间。

AWS Glue 中的孤立文件删除优化器会扫描表元数据和实际数据文件,识别孤立文件,然后将其删除以回收存储空间。优化器仅会删除在优化器创建日期之后创建的且同时符合配置的删除条件的文件。在优化器创建日期之前或之日创建的文件永远不会删除。

孤立文件删除逻辑

  1. 日期检查:将文件创建日期与优化器创建日期进行比较。如果文件早于或等于优化器创建日期,则会跳过该文件。

  2. 优化器配置检查:如果文件晚于优化器创建日期,则根据配置的时效阈值对文件进行评估。如果文件符合删除条件,优化器会将其删除。如果文件不符合条件,则跳过该文件。

可以通过在 Data Catalog 中创建孤立文件删除表优化器来启动孤立文件删除。

重要

默认情况下,删除孤立文件会评估整个 AWS Glue 表位置上的文件。虽然可以使用 API 参数配置子前缀来限制评估范围,但必须确保表位置不包含其他数据来源或表的文件。如果您的表位置与其他数据源重叠,服务可能会将不相关的文件识别为孤立文件并删除。