選擇合適的資料表架構,可最佳化效能、降低成本,並維持各項數據分析工具的資料存取權。Borderless Lakehouse 提供多種資料表類型和服務端點,您可以根據寫入引擎、讀取需求和管理控制需求,選擇合適的選項。
依目錄或引擎區分的表格格式
選取目錄或引擎,瞭解支援的資料表格式、metastore 設定、儲存空間最佳化功能,以及引擎互通性。
Lakehouse 執行階段目錄
Lakehouse 執行階段目錄透過 Apache Iceberg REST 目錄端點管理 Apache Iceberg 資料表,並在與 Iceberg 相容的引擎 (Apache Spark、Apache Flink 和 Trino) 和 BigQuery 之間提供順暢的讀寫互通性,同時採用業界標準的 Iceberg REST 目錄介面。
支援的表格格式
支援 Apache Iceberg V2 資料表 (正式發布版) 和 V3 資料表 (預先發布版)。不支援 Iceberg V1 資料表。如要搭配使用現有的 V1 資料表和 Lakehouse,必須先將資料表升級至支援的版本。詳情請參閱「將 Iceberg V1 資料表升級至 V2」。
Key features include:
- Metastore:Lakehouse 執行階段目錄。
- 儲存空間:Cloud Storage。
- 儲存空間最佳化:由您、第三方或 Google 管理 (預先發布版)。
- 讀取及寫入權限:
- 開放原始碼引擎:讀取和寫入 (正式發布版)
- BigQuery:讀取/寫入 (預先發布版)
- 用途:開放式湖倉,提供高效能、企業級儲存空間,適用於進階數據分析、串流和 AI。
Hive metastore
Lakehouse 執行階段目錄透過針對 Spark ExternalCatalog 相容性最佳化的 Apache Hive metastore (HMS) 端點管理 Apache Hive 資料表,讓您在 Spark、Apache Hive 和 BigQuery 之間順暢共用資料。您可以使用開放原始碼引擎建立這些資料表,並儲存在 Cloud Storage。如果您希望 ETL 工作流程由開放原始碼引擎管理,不需要個別的自行託管 Hive metastore,且只需要 BigQuery 的讀取權限,這個選項就很適合。
由 Hive metastore 端點管理的資料表是標準 Apache Hive 和 Spark 資料表 (使用 Hive SerDes 或 Spark 資料來源),而非 Apache Iceberg 資料表。如要在 Lakehouse 執行階段目錄中建立及管理 Apache Iceberg 資料表,請改用 Apache Iceberg REST 目錄端點。
Key features include:
- Metastore:Lakehouse 執行階段目錄 (透過自訂
IMetastoreClient)。 - 儲存空間:Cloud Storage (支援 Parquet、ORC 和 Avro 等格式)。
- 儲存空間最佳化:由您或第三方管理。
- 讀取及寫入權限:
- 開放原始碼引擎 (Spark 和 Apache Hive):讀取和寫入。
- BigQuery:唯讀。
- 用途:將現有的 Spark 和 Apache Hive 工作負載,遷移至 Google Cloud的全代管無伺服器 metastore。
各產品的資料表格式
請參考下表,比較 Lakehouse 執行階段目錄中的資料表類型。
湖倉
| Apache Iceberg (正式發布版) | 跨雲端資料存取 (預先發布版) | Apache Hive (正式發布版) | |
|---|---|---|---|
| Metastore | Lakehouse 執行階段目錄 | Lakehouse 執行階段目錄 | Lakehouse 執行階段目錄 |
| 儲存空間 | Cloud Storage | Cloud Storage / Amazon S3 | Cloud Storage |
| 儲存空間最佳化 | 客戶自行管理、第三方管理或 Google 管理 (預先發布版) | 由客戶或第三方管理 | 由客戶或第三方管理 |
| 讀取/寫入 |
開放原始碼引擎 (讀取/寫入) BigQuery (讀取/寫入 [預先發布版]) |
開放原始碼引擎 (讀取) BigQuery (讀取) |
開放原始碼引擎 (讀取/寫入) BigQuery (唯讀) |
| 進階作業 | 無 | 無 | 無 |
| 存取控管 | 透過 IAM 控管資料表層級安全性 | 透過 IAM 控管資料表層級安全性 | 透過 IAM 控管資料表層級安全性 |
| 用途 | 開放式湖倉 | 查詢其他雲端服務供應商的資料,不必遷移檔案或建構複雜的 ETL 管道 | 將現有的 Spark 和 Apache Hive 工作負載遷移至全代管無伺服器 metastore |
Iceberg 資料表功能
請參閱下表,進一步瞭解 Lakehouse 執行階段目錄中 Apache Iceberg 資料表提供的功能。
如要比較 Lakehouse 執行階段目錄管理的 Apache Iceberg 資料表,與 BigQuery 管理的 Apache Iceberg 資料表功能,請參閱「Iceberg 資料表功能比較」。
| 功能 | 支援 |
|---|---|
| 目錄 | Lakehouse 執行階段目錄 (與 Iceberg REST 目錄相容) |
| 儲存空間 | Cloud Storage |
| 可透過 Iceberg REST 目錄端點存取 | 是 |
| 讀寫互通性 | |
BigQuery 讀取查詢 (SELECT、BigQuery ML、AI 函式) |
支援 (正式發布版) |
BigQuery DML (INSERT、UPDATE、DELETE、MERGE) |
支援 (預先發布版) |
| OSS 引擎讀取 | 支援 (正式發布版) |
| OSS 引擎寫入 | 支援 (正式發布版) |
| OSS 引擎串流寫入 (Kafka、Spark、Dataflow 搭配 Iceberg I/O 接收器) | 支援 (正式發布版) |
| 代管和進階功能 | |
| 資料表管理 (壓縮、垃圾收集) | 支援 (預先發布版) |
| BigQuery 變更資料擷取 (CDC) | 支援 (預先發布版) |
| 時間回溯 | |
| 時間旅行 (使用 OSS 引擎) | 彈性 (透過資料表屬性設定) |
| 時間旅行 (使用 BigQuery) | 上限為 7 天 |
| 快照記錄和復原至先前的快照 | 支援 (正式發布版) |
| Knowledge Catalog 功能 | |
| 中繼資料分類、搜尋和探索 | 支援 (正式發布版) |
| 歷程 | 支援 (正式發布版) |
| 資料品質/剖析 | 支援 (正式發布版) |
| 深入分析 | 支援 (正式發布版) |
| AI 生成資料欄和資料表說明 | 支援 (正式發布版) |