Lakehouse for Apache Iceberg 支援建立、管理及查詢儲存在 Cloud Storage 中的 Lakehouse Iceberg REST 目錄資料表。
這些資料表透過 Lakehouse 執行階段目錄管理,可供 BigQuery 和連結的開放原始碼引擎讀取。寫入作業仍僅限於最初建立資料表的特定引擎。除了查詢引擎整合外,Lakehouse 執行階段目錄也實作了開放原始碼 Iceberg REST 目錄 API 規格,可讓相容的 REST 用戶端直接與資料表資源互動。
事前準備
請參閱表格總覽,瞭解不同類型的表格,以及使用這些表格的影響。
-
啟用 BigLake API。
啟用 API 時所需的角色
如要啟用 API,您需要服務使用情形管理員 IAM 角色 (
roles/serviceusage.serviceUsageAdmin),其中包含serviceusage.services.enable權限。瞭解如何授予角色。
必要的角色
如要取得管理 Lakehouse Iceberg REST 目錄資料表所需的權限,請要求管理員在專案和儲存空間 bucket 中授予您下列 IAM 角色:
-
建立及刪除資料表:
- BigLake 管理員 (
roles/biglake.admin) - 專案 - 儲存空間管理員 (
roles/storage.admin) - Cloud Storage bucket
- BigLake 管理員 (
-
以憑證販售模式讀取資料表資料:
BigLake 檢視者 (
roles/biglake.viewer) - 專案 -
以憑證販售模式寫入資料表資料:
BigLake 編輯器 (
roles/biglake.editor) - 專案 -
在非憑證臨時配發模式下讀取資料表資料:
- BigLake 檢視者 (
roles/biglake.viewer) - 專案 - Storage 物件檢視者 (
roles/storage.objectViewer) - Cloud Storage 值區
- BigLake 檢視者 (
-
在非憑證臨時配發模式下寫入資料表資料:
- BigLake 編輯者 (
roles/biglake.editor) - 專案 - Storage 物件使用者 (
roles/storage.objectUser) - Cloud Storage 值區
- BigLake 編輯者 (
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
管理動作
您可以對 Lakehouse Iceberg REST 目錄資料表執行下列管理動作:
- 建立資料表:使用 Google Cloud 主控台、Spark、Trino 或 Iceberg REST 目錄 API (
CreateIcebergTable),在目錄命名空間中建立 Apache Iceberg 資料表。 - 列出資料表:使用 Google Cloud 主控台、Spark、Trino 或 Iceberg REST 目錄 API (
ListIcebergTableIdentifiers),查看命名空間中的資料表 ID。 - 取得表格詳細資料:使用 Google Cloud 控制台、Spark、Trino 或 Iceberg REST 目錄 API (
GetIcebergTable、LoadIcebergTableCredentials),檢查表格結構定義、屬性和憑證。 - 插入資料:使用 Spark 或 Trino 將資料列附加至 Iceberg 資料表。
- 查詢資料表:使用四部分資料表命名,從 Spark、Trino 或 BigQuery 對 Iceberg 資料表執行查詢。
- 變更資料表:使用 Google Cloud 控制台、Spark、Trino 或 Iceberg REST 目錄 API (
UpdateIcebergTable),演進資料表結構定義及更新中繼資料屬性。 - 刪除表格:使用 Google Cloud 控制台、Spark、Trino 或 Iceberg REST 目錄 API (
DeleteIcebergTable),從目錄中捨棄表格註冊,但不清除基礎儲存空間檔案。