删除或舍弃表只会从 Lakehouse 运行时目录中移除表注册信息和元数据。存储在 Cloud Storage 中的底层数据文件不会被清除或删除。
您可以使用 Google Cloud 控制台、Spark 和 Trino 中的 SQL drop 命令或开源 Iceberg REST Catalog API 规范 (DELETE /v1/{prefix}/namespaces/{namespace}/tables/{table}) 删除表。
准备工作
请参阅表格概览,了解不同类型的表格以及使用这些表格的影响。
-
启用 BigLake API。
启用 API 所需的角色
如需启用 API,您需要拥有 Service Usage Admin IAM 角色 (
roles/serviceusage.serviceUsageAdmin),该角色包含serviceusage.services.enable权限。了解如何授予角色。
所需的角色
如需获得删除表所需的权限,请让管理员向您授予项目的以下 IAM 角色:
-
所有用户:
BigLake Admin (
roles/biglake.admin) - 您的项目
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
删除表
删除表。
控制台
在 Google Cloud 控制台中,前往 Lakehouse。
选择现有目录,或者创建目录(如果您还没有目录)。
在命名空间详细信息表格中,选择一个表格,然后展开菜单选项。
点击删除。
在对话框中输入表名称以确认删除。
点击删除。
Spark
spark.sql("DROP TABLE TABLE_NAME;")
Trino
DROP TABLE TABLE_NAME;
REST
如需使用 REST API 删除 Iceberg 表注册,请向 DeleteIcebergTable 端点发出 DELETE 请求:
DELETE /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables/TABLE_NAME
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目 ID。CATALOG_ID:Lakehouse 运行时目录的 ID。NAMESPACE_NAME:目录命名空间的名称。TABLE_NAME:Iceberg 表的名称。