如果您有现有的版本 1 (V1) Apache Iceberg 表,则必须先使用查询引擎升级这些表,然后才能将它们与 Apache Iceberg REST Catalog 端点搭配使用。如需了解详情,请参阅更改表。
准备工作
-
验证是否已为您的 Google Cloud 项目启用结算功能。
-
启用 BigLake API。
启用 API 所需的角色
如需启用 API,您需要拥有
serviceusage.services.enable权限。如果您 创建了项目,则可能已通过 所有者角色 (roles/owner) 拥有此权限。否则,您可以通过 Service Usage Admin 角色 (roles/serviceusage.serviceUsageAdmin) 获得此权限。 了解如何授予角色。 - 使用 Apache Iceberg REST Catalog 端点设置 Lakehouse 运行时目录。
所需角色
如需获得升级表所需的权限,请让管理员向您授予项目和存储桶的以下 IAM 角色:
-
在 凭据自动售卖模式下升级表:
BigLake Editor (
roles/biglake.editor) - 项目 -
在非凭据自动售卖模式下升级表:
- BigLake Editor (
roles/biglake.editor) - 项目 - Storage Object User (
roles/storage.objectUser) - Cloud Storage 存储桶
- BigLake Editor (
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
您也可以通过自定义 角色或其他预定义 角色来获取所需的权限。
升级表
如需将 Iceberg V1 表升级到 V2,请在查询引擎中运行以下命令:
Spark
ALTER TABLE CATALOG_NAME.SCHEMA_NAME.TABLE_NAME SET TBLPROPERTIES ('format-version'='2');
替换以下内容:
CATALOG_NAME:目录的名称。SCHEMA_NAME:架构的名称。TABLE_NAME:表的名称。