透過 Spark 建立及查詢中繼資料表

您可以使用開放原始碼引擎 (例如 Spark),在 BigQuery 筆記本中查詢 Apache Spark Iceberg 資料表。這些資料表是一般 Iceberg 資料表,中繼資料儲存在 BigLake 中繼資料儲存庫中。同一個資料表可從 BigQuery 和 Spark 查詢。

事前準備

  • 在 BigQuery 筆記本中使用 Spark 時建立 Iceberg 資料表。資料表結構定義會儲存在 BigLake 中繼資料庫中。例如,您可以使用 DataprocDataproc Serverless儲存程序建立資料表。

注意事項

  • 僅支援 Iceberg 資料表。
  • 執行查詢時,請務必將命名空間和資料庫名稱對應為 BigQuery 資料集名稱。下表列出適用的鍵對應項目:

    開放原始碼 BigQuery
    命名空間 BigQuery 資料集
    資料庫 BigQuery 資料集
    資料表 (已分區或未分區) BigQuery 資料表

查看及查詢資料表

在 Spark 中建立 BigQuery 資源後,您可以在Google Cloud 控制台中查看及查詢這些資源。以下範例說明使用互動式 Spark 查詢中繼資料表的一般步驟:

  1. 使用自訂 Iceberg 目錄:

    USE `CATALOG_NAME`;

    更改下列內容:

    • CATALOG_NAME:您在 SQL 工作中使用的 Spark 目錄名稱。
  2. 建立命名空間:

    CREATE NAMESPACE IF NOT EXISTS NAMESPACE_NAME;

    更改下列內容:

    • NAMESPACE_NAME:參照 Spark 資料表的命名空間名稱。
  3. 使用已建立的命名空間:

    USE NAMESPACE_NAME;
  4. 建立 Iceberg 資料表:

    CREATE TABLE TABLE_NAME (id int, data string) USING ICEBERG;

    更改下列內容:

    • TABLE_NAME:Iceberg 資料表的名稱。
  5. 插入表格列:

    INSERT INTO TABLE_NAME VALUES (1, "first row");
  6. 您可以使用 Google Cloud 控制台執行下列任一操作:

     SELECT * FROM `TABLE_NAME`;

後續步驟