このドキュメントでは、 Google Cloud Lakehouse の主な用語とコンセプトについて説明します。
このページは機能の完全なリストではなく、Google Cloud Lakehouse のドキュメント全体で使用される用語とコンセプトの一般的なリファレンスです。
基本概念
次のコンセプトは、Google Cloud Lakehouse アーキテクチャの基盤となります。
データ Google Cloud Lakehouse
データ レイクハウスは、データレイクのコスト削減と柔軟性と、データ ウェアハウスのデータ管理とパフォーマンスを組み合わせたものです。Cloud Storage にオープン形式でデータを保存し、正確なセキュリティ制御や高速クエリなどの BigQuery 機能を使用できます。
オープンな相互運用性
オープンな相互運用性とは、BigQuery、Apache Spark、Apache Flink などの複数の分析システムとトランザクション システムが、Apache Iceberg などのオープン形式のデータの単一コピーに対して動作できることです。これにより、データの重複が不要になり、異なるツール間でデータの一貫したビューが確保されます。
Lakehouse ランタイム カタログ
Lakehouse ランタイム カタログ は、 Google Cloud Lakehouse の唯一の情報源として機能する、一元化されたサーバーレスのメタデータ サービスです。Apache Spark、Apache Flink、BigQuery などの複数のエンジンで、同じテーブルを同時に検出してクエリできます。
カタログ タイプ
Lakehouse ランタイム カタログには、メタデータの管理に使用できるさまざまな種類のカタログが用意されています。
Apache Iceberg REST カタログ エンドポイント
これは、Apache Iceberg REST カタログ エンドポイントに基づくカタログです。オープンソース エンジンと BigQuery の相互運用性を提供し、認証情報の提供や障害復旧などの機能をサポートします。
BigQuery 用のカスタム Apache Iceberg カタログ
これは、BigQuery カタログをマネージド Apache Iceberg テーブルのバッキング メタデータ サービスとして直接使用する統合です。
テーブルの形式
Google Cloud Lakehouse は、データの管理に使用するエンジンに応じて、いくつかのテーブル形式をサポートしています。
Lakehouse Iceberg REST カタログ テーブル
これらは、オープンソース エンジンから作成され、Cloud Storage に保存される Apache Iceberg テーブルです。Lakehouse ランタイム カタログは、中央カタログとして機能します。 テーブルを作成したオープンソース エンジンのみが、テーブルに書き込むことができます。
BigQuery テーブル
これらのテーブルは BigQuery で管理されます。
Apache Iceberg テーブル
これらは、BigQuery から作成して Cloud Storage に保存する Apache Iceberg テーブルです。BigQuery は、すべてのデータ レイアウトと最適化を処理します。これらのテーブルは複数のエンジンで読み取ることができますが、BigQuery はこれらのテーブルに直接書き込むことができる唯一のエンジンです。
ネイティブ テーブル
これらのテーブルは BigQuery によって管理され、BigQuery ストレージにデータを保存します。これらのテーブルを Lakehouse ランタイム カタログに接続できます。
外部テーブル
外部テーブルは、Lakehouse ランタイム カタログの外部に存在します。データとメタデータは、サードパーティ カタログ(Cloud Storage、S3、Azure Blob Storage など)で自己管理されます。BigQuery はこれらのテーブルから読み取るだけです。
テーブルの機能
テーブルの進化
Google Cloud Lakehouse は Apache Iceberg テーブルの進化をサポートしています。これにより、テーブルデータを書き換えたり、テーブルを再作成したりすることなく、テーブルのスキーマまたはパーティション仕様を時間の経過とともに変更できます。
タイムトラベル
タイムトラベルを使用すると、特定の時点またはスナップショット ID に存在していたテーブルのデータをクエリできます。これは、監査、実験の再現、誤って削除した後のデータの復元に役立ちます。
メタデータのキャッシュ保存
メタデータのキャッシュ保存は、外部テーブルのクエリ パフォーマンスを高速化する機能です。テーブルのメタデータのコピーを BigQuery ストレージに保存することで、クエリの実行中に Cloud Storage からメタデータ ファイルを読み取る必要がなくなります。
Google Cloud Lakehouse テーブル管理
Google Cloud Lakehouse テーブル管理では、マネージド テーブルのコンパクションやガベージ コレクションなどのタスクを自動化することで、Lakehouse のメンテナンスを簡素化します。 これにより、最適なクエリ パフォーマンスとストレージ効率が確保されます。
相互運用性のコンセプト
Lakehouse ランタイム カタログのフェデレーション
カタログのフェデレーションは、Lakehouse ランタイム カタログで、BigQuery に表示される外部カタログ(AWS Glue や Unity Catalog など)のテーブルを管理してクエリできる機能です。
P.C.N.T 命名構造
P.C.N.T 命名構造は、BigQuery から Lakehouse ランタイム カタログ内のテーブルを一意に識別してクエリするために使用される 4 つの部分からなる規則です。Project.Catalog.Namespace.Table を表します。
- プロジェクト: プロジェクト ID。 Google Cloud
- カタログ: Lakehouse ランタイム カタログの名前。
- Namespace: テーブルの論理グループ(データセットと同様)。
- Table: データテーブルの名前。
セキュリティ コンセプト
接続
接続は、外部データにアクセスするための認証情報を保存する BigQuery リソースです。Google Cloud Lakehouse では、接続のサービス アカウントがユーザーに代わってストレージ バケットにアクセスできるようにすることで、Cloud Storage へのアクセスを委任します。
認証情報の提供
認証情報の提供は、Lakehouse ランタイム カタログを使用する際のアクセス制御を強化するセキュリティ メカニズムです。有効にすると、クエリに必要な特定のファイルパスへのアクセス権のみを付与するように設計された、有効期間の短いスコープダウンされた認証情報が生成されます。
統合ガバナンス
統合ガバナンスを使用すると、Knowledge Catalog との統合により、セキュリティ ポリシーとデータ管理 ポリシーを一元的に定義して適用できます。
信頼性のコンセプト
クロスリージョン レプリケーション
クロスリージョン レプリケーションは、リージョン停止時にカタログの可用性を確保するために、複数のリージョンにメタデータを複製します。
フェイルオーバー
フェイルオーバーは、リージョン停止時にプライマリ リージョンとセカンダリ リージョンを切り替えて、カタログ オペレーションを維持するプロセスです。