透過 Spark 建立及查詢中繼資料表
您可以使用開放原始碼引擎 (例如 Spark),在 BigQuery 筆記本中查詢 Apache Spark Iceberg 資料表。這些資料表是一般 Iceberg 資料表,中繼資料儲存在 BigLake 中繼資料儲存庫中。同一個資料表可從 BigQuery 和 Spark 查詢。
事前準備
- 在 BigQuery 筆記本中使用 Spark 時建立 Iceberg 資料表。資料表結構定義會儲存在 BigLake 中繼資料庫中。例如,您可以使用 Dataproc、Dataproc Serverless 或儲存程序建立資料表。
注意事項
- 僅支援 Iceberg 資料表。
執行查詢時,請務必將命名空間和資料庫名稱對應為 BigQuery 資料集名稱。下表列出適用的鍵對應項目:
開放原始碼 BigQuery 命名空間 BigQuery 資料集 資料庫 BigQuery 資料集 資料表 (已分區或未分區) BigQuery 資料表
查看及查詢資料表
在 Spark 中建立 BigQuery 資源後,您可以在Google Cloud 控制台中查看及查詢這些資源。以下範例說明使用互動式 Spark 查詢中繼資料表的一般步驟:
使用自訂 Iceberg 目錄:
USE `CATALOG_NAME`;
更改下列內容:
CATALOG_NAME
:您在 SQL 工作中使用的 Spark 目錄名稱。
建立命名空間:
CREATE NAMESPACE IF NOT EXISTS NAMESPACE_NAME;
更改下列內容:
NAMESPACE_NAME
:參照 Spark 資料表的命名空間名稱。
使用已建立的命名空間:
USE NAMESPACE_NAME;
建立 Iceberg 資料表:
CREATE TABLE TABLE_NAME (id int, data string) USING ICEBERG;
更改下列內容:
TABLE_NAME
:Iceberg 資料表的名稱。
插入表格列:
INSERT INTO TABLE_NAME VALUES (1, "first row");
您可以使用 Google Cloud 控制台執行下列任一操作:
SELECT * FROM `TABLE_NAME`;