比較表格類型

選擇合適的資料表架構,對於盡可能提高效能、降低成本,以及確保數據分析工具可存取資料至關重要。本頁面說明 Lakehouse for Apache Iceberg 中提供的不同資料表類型和服務端點,協助您根據寫入引擎、讀取需求和管理控制需求,選擇最合適的選項。

目錄或引擎的表格格式

選取目錄或引擎,瞭解其支援的表格格式、中繼存放區設定、儲存空間最佳化功能,以及引擎互通性。

Lakehouse 執行階段目錄

Lakehouse 執行階段目錄會透過 Iceberg REST 目錄端點管理 Apache Iceberg 資料表,並在與 Iceberg 相容的引擎 (Spark、Flink、Trino) 和 BigQuery 之間,提供順暢的讀寫互通性,同時以業界標準的 Iceberg REST 目錄介面為後盾。

支援的表格格式

支援 Apache Iceberg V2 資料表 (正式發布版) 和 V3 資料表 (預先發布版)。系統不支援 Iceberg V1 資料表。如要搭配 Lakehouse for Apache Iceberg 使用現有的 V1 資料表,請務必先將資料表升級至支援的版本。詳情請參閱「將 Iceberg V1 資料表升級至 V2」。

Key features include:

  • Metastore:Lakehouse 執行階段目錄。
  • 儲存空間:Cloud Storage。
  • 儲存空間最佳化:由您管理,或選擇由 Google 管理 (搶先體驗版)。
  • 讀取及寫入權限
    • 開放原始碼引擎:讀取和寫入 (正式版)
    • BigQuery:讀取/寫入 (預先發布版)
  • 應用實例:開放式湖倉,提供高效能企業級儲存空間,適用於進階分析、串流和 AI。

Hive Metastore

Lakehouse 執行階段目錄會透過 Apache Hive metastore (HMS) 端點管理 Apache Hive 資料表,並針對 Apache Spark ExternalCatalog 相容性進行最佳化,讓您在 Apache Spark、Apache Hive 和 BigQuery 之間順暢共用資料。您可以從開放原始碼引擎建立這些資料表,並儲存在 Cloud Storage 中。如果您希望 ETL 工作流程由開放原始碼引擎管理,不需要個別的自行代管 Hive 中繼存放區,且只需要 BigQuery 的讀取權限,這個選項最適合您。

由 Hive Metastore 端點管理的資料表是標準的 Apache Hive 和 Spark 資料表 (使用 Hive SerDes 或 Spark 資料來源),而非 Apache Iceberg 資料表。如要在 Lakehouse 執行階段目錄中建立及管理 Apache Iceberg 資料表,請改用 Iceberg REST 目錄端點。

Key features include:

  • Metastore:Lakehouse 執行階段目錄 (透過自訂 IMetastoreClient)。
  • 儲存空間:Cloud Storage (支援 Parquet、ORC 和 Avro 等格式)。
  • 儲存空間最佳化:由您或第三方管理。
  • 讀取及寫入權限
    • 開放原始碼引擎 (Spark 和 Hive):讀取和寫入。
    • BigQuery:唯讀。
  • 用途:將現有的 Spark 和 Hive 工作負載,遷移至 Google Cloud上的全代管無伺服器 Metastore。

BigQuery

BigQuery 支援 Apache Iceberg 代管資料表、原生資料表和外部資料表。

  • Apache Iceberg 代管資料表:這類 Apache Iceberg 資料表是由您透過 BigQuery 建立及管理,並儲存在 Cloud Storage 中。雖然開放原始碼引擎可以讀取這些資料,但 BigQuery 才是管理中繼資料並寫入資料的引擎。如果您希望工作流程完全由 BigQuery 管理,這個選項最適合您。

  • 原生資料表:這些是原生 BigQuery 資料表。這些服務完全由 Google 管理,並提供最先進的分析和管理功能。這個選項最適合非 Iceberg 工作負載。

  • 外部資料表:這些資料表是 BigQuery 專用的建構項目,適用於儲存在 Cloud Storage、Amazon S3 或 Azure Blob 儲存體中的資料。資料和中繼資料由您自行管理,BigQuery 只有讀取權限。如要直接在第三方目錄或儲存空間中管理資料,請選擇這個選項。

各產品的資料表格式

請參閱下表,比較 Lakehouse 執行階段目錄和 BigQuery 的資料表類型。

湖倉

Apache Iceberg (正式發布版) 無邊界 Lakehouse (預覽) Apache Hive (預先發布版)
Metastore Lakehouse 執行階段目錄 Lakehouse 執行階段目錄 Lakehouse 執行階段目錄
儲存空間 Cloud Storage Cloud Storage / Amazon S3 Cloud Storage
儲存空間最佳化 客戶管理、第三方管理或 Google 管理 (預先發布版) 由客戶或第三方管理 由客戶或第三方管理
讀寫 開放原始碼引擎 (讀取/寫入)

BigQuery (讀取/寫入 [預先發布版])
開放原始碼引擎 (讀取)

BigQuery (讀取)
開放原始碼引擎 (讀取/寫入)

BigQuery (唯讀)
進階作業
用途 開放式 lakehouse 查詢其他雲端供應商的資料,不必遷移檔案或建構複雜的 ETL 管道。 將現有的 Spark 和 Hive 工作負載遷移至全代管無伺服器 metastore

BigQuery

Apache Iceberg 代管資料表 外部資料表 標準表格
Metastore BigQuery 外部或自行代管的 Metastore BigQuery
儲存空間 Cloud Storage Cloud Storage / Amazon S3 / Azure BigQuery
儲存空間最佳化 Google 代管 由客戶或第三方管理 Google 代管
讀寫 開放原始碼引擎 (使用 Iceberg 程式庫時為唯讀,可透過 BigQuery Storage API 讀取/寫入)

BigQuery (讀取/寫入)

開放原始碼引擎 (讀取/寫入)

BigQuery (唯讀)
開放原始碼引擎 (可與 BigQuery Storage API 互通讀取/寫入)

BigQuery (讀取/寫入)

進階作業 使用 BigQuery Storage Write API (gRPC)、變更資料擷取 (CDC) 和多重陳述式交易,以高輸送量串流資料 使用 BigQuery Storage Write API (gRPC)、變更資料擷取 (CDC) 和多重陳述式交易,以高輸送量串流資料
用途 開放式湖倉,提供高效能企業級儲存空間,適用於進階分析、串流和 AI 用於 BigQuery 載入作業的暫存資料表、僅供查詢的舊版資料表 企業級儲存空間,適用於進階分析、串流和 AI

後續步驟