您可以在Lakehouse 執行階段目錄中,查看命名空間內所有已註冊的資料表實體。
查詢引擎可以使用標準 SQL 指令列出資料表,您也可以使用 REST API 擷取資料表 ID。
事前準備
-
啟用 BigLake API。
啟用 API 時所需的角色
如要啟用 API,您需要具備服務使用情形管理員 IAM 角色 (
roles/serviceusage.serviceUsageAdmin),其中包含serviceusage.services.enable權限。瞭解如何授予角色。 - 使用 Apache Iceberg REST 目錄端點設定 Lakehouse 執行階段目錄。
必要的角色
如要取得列出資料表所需的權限,請要求管理員在專案中授予您下列 IAM 角色:
-
全部:
BigLake 檢視者 (
roles/biglake.viewer) - 您的專案
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
表格功能和支援
在 Lakehouse 執行階段目錄中使用表格時,瞭解不同表格類型及其啟用功能很有幫助。如要進一步瞭解如何使用 Apache Iceberg 資料表,請參閱 Apache Iceberg 資料表總覽。
支援的 Iceberg 資料表
系統僅支援 Apache Iceberg V2 (正式發布版) 和 V3 (預先發布版) 資料表。不支援 Iceberg V1 資料表。如要升級現有的 V1 資料表,請參閱「將 Iceberg V1 資料表升級至 V2」。
列出表格
列出資料表。
控制台
前往 Google Cloud 控制台的「Lakehouse」Lakehouse。
選取現有目錄,或建立目錄 (如果沒有的話)。
資料表會顯示在「命名空間詳細資料」頁面。
Spark
spark.sql("SHOW TABLES").show()
如要啟用讀取/寫入互通性和表格管理 (預覽版),請將屬性新增至 TBLPROPERTIES 子句:
TBLPROPERTIES (
'gcp.biglake.bigquery-dml.enabled' = true,
'gcp.biglake.table-management.enabled' = true
)
Trino
SHOW TABLES;
如要啟用讀取/寫入互通性和表格管理 (預覽版),請在 WITH 子句中加入下列屬性:
WITH (
"gcp.biglake.bigquery-dml.enabled" = 'true',
"gcp.biglake.table-management.enabled" = 'true'
)
gcloud
如要使用 gcloud 列出資料表,請執行 gcloud biglake iceberg tables list 指令。
gcloud biglake iceberg tables list \ --project="PROJECT_ID" \ --catalog="CATALOG_ID" \ --namespace="NAMESPACE_NAME"
更改下列內容:
PROJECT_ID:您的 Google Cloud 專案 ID。CATALOG_ID:目錄 ID。NAMESPACE_NAME:目錄命名空間的名稱。
BigQuery
如要從 BigQuery 列出 Lakehouse 執行階段目錄中的 Apache Iceberg 資料表,可以探索 BigQuery 控制台中的「Explorer」窗格,或使用 bq ls 指令。
REST
如要使用 REST API 列出命名空間中的資料表 ID,請向 ListIcebergTableIdentifiers 端點發出 GET 要求:
GET /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables
回應會包含 JSON 陣列,內含在指定命名空間下註冊的表格 ID。
更改下列內容:
PROJECT_ID:您的 Google Cloud 專案 ID。CATALOG_ID:目錄 ID。NAMESPACE_NAME:目錄命名空間的名稱。