列出表格

您可以在Lakehouse 執行階段目錄中,查看命名空間內所有已註冊的資料表實體。

查詢引擎可以使用標準 SQL 指令列出資料表,您也可以使用 REST API 擷取資料表 ID。

事前準備

  1. 確認專案已啟用計費功能 Google Cloud

  2. 啟用 BigLake API。

    啟用 API 時所需的角色

    如要啟用 API,您需要具備服務使用情形管理員 IAM 角色 (roles/serviceusage.serviceUsageAdmin),其中包含 serviceusage.services.enable 權限。瞭解如何授予角色

    啟用 API

  3. 使用 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」。

列出表格

列出資料表。

控制台

  1. 前往 Google Cloud 控制台的「Lakehouse」Lakehouse

    前往 Lakehouse

  2. 選取現有目錄,或建立目錄 (如果沒有的話)。

資料表會顯示在「命名空間詳細資料」頁面。

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:目錄命名空間的名稱。

後續步驟