启用目录级自动表优化 - Amazon Glue
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

启用目录级自动表优化

您可以为 Data Catalog 中的所有 Apache Iceberg 新表启用自动表优化。创建表后,还可以手动显式更新表优化设置。

要更新 Data Catalog 设置以启用目录级表优化,使用的 IAM 角色必须对根目录具有 glue:UpdateCatalog 权限。您可以使用 GetCatalog API 来验证目录属性。

对于 Lake Formation 托管式表,在目录优化配置期间选择的 IAM 角色需要任何新表或更新后的表的 Lake Formation ALTERDESCRIBEINSERT 以及 DELETE 权限。

  1. 通过 https://console.aws.amazon.com/lakeformation/ 打开 Lake Formation 控制台。

  2. 在导航窗格中,选择 Data Catalog

  3. 选择目录选项卡。

  4. 选择账户级别目录。

  5. 表优化选项卡下选择表优化编辑。也可在操作中选择编辑优化

    屏幕截图,其中显示了在目录级别启用优化的编辑选项。
  6. 表优化页面上配置以下选项:

    屏幕截图,其中显示了目录级别的优化选项。
    1. 配置压缩设置:

      • 启用/禁用压缩功能。

      • 选择具有运行优化器所需权限的 IAM 角色。

        有关 IAM 角色权限要求的更多信息,请参阅 表优化的先决条件

    2. 配置快照保留设置:

      • 启用/禁用保留功能。

      • 设置以天为单位的快照保留期:默认值为 5 天。

      • 设置要保留的快照数量:默认值为 1 个快照。

      • 启用/禁用过期文件清理功能。

    3. 配置孤立文件删除设置:

      • 启用/禁用孤立文件删除功能。

      • 设置以天为单位的孤立文件保留期:默认值为 3 天。

  7. 选择保存

使用以下 CLI 命令更新现有目录的优化器设置:

例 更新目录的优化器设置
aws glue update-catalog \ --name catalog-id \ --catalog-input \ '{ "CatalogId": "111122223333", "CatalogInput": { "CatalogProperties": { "CustomProperties": { "ColumnStatistics.Enabled": "false", "ColumnStatistics.RoleArn": "arn:aws:iam::111122223333:role/service-role/stats-role-name" }, "IcebergOptimizationProperties": { "RoleArn": "arn:aws:iam::111122223333:role/optimizer-role-name", "Compaction": { "enabled": "true" }, "Retention": { "enabled": "true", "snapshotRetentionPeriodInDays": "10", "numberOfSnapshotsToRetain": "5", "cleanExpiredFiles": "true" }, "OrphanFileDeletion": { "enabled": "true", "orphanFileRetentionPeriodInDays": "3" } } } } }'

如果在使用目录级优化器时遇到问题,请检查以下内容:

  • 确保 IAM 角色具有“先决条件”部分所述的正确权限。

  • 查看 CloudWatch 日志,了解与优化器操作相关的任何错误信息。

    有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的查看可用的指标

  • 检查目录配置,确认目录设置是否已成功应用。

  • 对于表访问失败,请查看 CloudWatch 日志和 EventBridge 通知,了解详细的错误信息。