Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
启用压缩
您可以使用 Lake Formation 控制台、Amazon Glue 控制台、Amazon CLI 或 Amazon API 为数据目录中的 Apache Iceberg 表启用压缩。对于新表,您可以在创建表时选择 Apache Iceberg 表格式并启用压缩。新表会默认禁用压缩。
- Console
-
启用压缩
-
通过 https://console.aws.amazon.com/lakeformation/ 打开 Lake Formation 控制台,然后以数据湖管理员、表创建者或已被授予对表的 glue:UpdateTable
和 lakeformation:GetDataAccess
权限的用户身份登录。
-
在导航窗格的数据目录下,选择表。
在表页面上,选择要启用压缩的开放表格式的表,然后在操作菜单下,选择启用压缩。
-
您也可以通过选中该表并打开表详细信息页面来启用压缩。选择页面下半部的表优化选项卡,然后选择启用压缩。
-
然后从下拉列表中选择一个具有 表优化的先决条件 部分所示权限的现有 IAM 角色。
选择创建新的 IAM 角色选项后,服务会创建一个具有运行压缩所需权限的自定义角色。
按照以下步骤更新一个现有的 IAM 角色:
-
要更新 IAM 角色的权限策略,请在 IAM 控制台中转到用于运行压缩的 IAM 角色。
-
在“添加权限”部分中,选择“创建策略”。在新打开的浏览器窗口中,创建将用于您的角色的新策略。
在“创建策略”页面上,选择 JSON 选项卡。将“先决条件”中显示的 JSON 代码复制到策略编辑器字段中。
- Amazon CLI
-
以下示例演示如何启用压缩。将账户 ID 替换为有效的 Amazon 账户 ID。将数据库名称和表名称替换为实际的 Iceberg 表名称和数据库名称。将 roleArn
替换为 IAM 角色的 Amazon 资源名称 (ARN) 以及具有运行压缩所需权限的 IAM 角色的名称。
aws glue create-table-optimizer \
--catalog-id 123456789012
\
--database-name iceberg_db
\
--table-name iceberg_table
\
--table-optimizer-configuration '{"roleArn":"arn:aws:iam::123456789012
:role/compaction_role
", "enabled":'true'}' \
--type compaction
- Amazon API
-
调用 CreateTableOptimizer
操作为表启用压缩。
启用压缩后,表优化选项卡会显示以下压缩详细信息(大约 15–20 分钟后):
- 开始时间
-
在 Lake Formation 中启动压缩进程的时间。该值是一个采用 UTC 时间格式的时间戳。
- 结束时间
-
数据目录中压缩进程结束的时间。该值是一个采用 UTC 时间格式的时间戳。
- Status
-
压缩运行的状态。值为成功或失败。
- 已压缩的文件数
已压缩的文件总数。
- 已压缩的字节数
-
已压缩的字节总数。