Lakehouse ランタイム カタログは、データ レイクハウスの信頼できる唯一の情報源を提供するフルマネージド サーバーレス サービスです。これにより、Apache Spark、Apache Flink、BigQuery などの複数のエンジンが、ファイルをコピーせずにテーブルとメタデータを共有できます。
Lakehouse ランタイム カタログは、ストレージ アクセス委任(認証情報の販売)をサポートしています。これにより、Cloud Storage バケットへの直接アクセスが不要になり、セキュリティが強化されます。また、統合されたガバナンス、リネージ、データ品質を実現するために Knowledge Catalog とも統合されています。
主な機能
Google Cloud Lakehouse のコンポーネントである Lakehouse ランタイム カタログは、データ マネジメントと分析にいくつかの利点をもたらします。たとえば、サーバーレス アーキテクチャ、オープン API によるエンジン相互運用性、統合されたユーザー エクスペリエンス、BigQuery と併用した場合の高パフォーマンスの分析、ストリーミング、AI などです。これらのメリットの詳細については、Google Cloud Lakehouse とはをご覧ください。
サポートされているエンジン
Lakehouse ランタイム カタログは、Apache Spark、Apache Flink、Trino などの複数のクエリエンジンと互換性があります。次の表に、各エンジンのドキュメントへのリンクを示します。
| エンジン | ドキュメント |
|---|---|
| Apache Spark | クイックスタート: Spark で使用する |
| Apache Flink | Apache Flink で使用する |
| Trino | Trino で使用する |
構成オプション
Lakehouse ランタイム カタログは、Apache Iceberg REST カタログ エンドポイントまたは BigQuery エンドポイントのカスタム Apache Iceberg カタログのいずれかを使用して構成できます。次の表に示すように、最適なオプションはユースケースによって異なります。
| ユースケース | 推奨事項 |
|---|---|
| オープンソース エンジンが Cloud Storage のデータにアクセスし、BigQuery や AlloyDB for PostgreSQL などの他のエンジンとの相互運用性を必要とする新しい Lakehouse ランタイム カタログ ユーザー。 | Apache Iceberg REST カタログ エンドポイントを使用します。 |
| BigQuery 用のカスタム Apache Iceberg カタログを含む現在のテーブルがある既存の Lakehouse ランタイム カタログ ユーザー。 | BigQuery エンドポイント用のカスタム Apache Iceberg カタログの使用を継続しますが、新しいワークフローには Apache Iceberg REST カタログを使用します。BigQuery エンドポイント用のカスタム Apache Iceberg カタログで作成されたテーブルは、BigQuery カタログ フェデレーションを介して Apache Iceberg REST カタログで表示できます。 |
BigLake metastore(クラシック)との違い
Lakehouse ランタイム カタログはGoogle Cloudで推奨される metastore ですが、BigLake metastore(クラシック)はレガシー機能と見なされます。
Lakehouse ランタイム カタログと BigLake metastore(クラシック)の主な違いは次のとおりです。
- Lakehouse ランタイム カタログは、Spark などのオープンソース エンジンとの直接統合をサポートしているため、メタデータの保存とジョブの実行時の冗長性を軽減できます。Lakehouse ランタイム カタログのテーブルには、複数のオープンソース エンジンと BigQuery から直接アクセスできます。
- Lakehouse ランタイム カタログは Apache Iceberg REST カタログ エンドポイントをサポートしていますが、BigLake metastore(クラシック)はサポートしていません。
Lakehouse ランタイム カタログの制限事項
Lakehouse ランタイム カタログのテーブルには次の制限が適用されます。
テーブルの管理
- BigQuery のデータ定義言語(DDL)ステートメントまたはデータ操作言語(DML)ステートメントを使用して、Lakehouse Iceberg REST カタログ テーブルを作成または変更することはできません。BigQuery API(bq コマンドライン ツールまたはクライアント ライブラリを使用)を使用して Lakehouse Iceberg REST カタログ テーブルを変更することはできますが、外部エンジンと互換性のない変更が行われる可能性があります。
- Lakehouse ランタイム カタログ テーブルは、名前変更オペレーションや
ALTER TABLE ... RENAME TOSpark SQL ステートメントをサポートしていません。 - Lakehouse ランタイム カタログ テーブルはクラスタリングをサポートしていません。
- Lakehouse ランタイム カタログ テーブルは、柔軟な列名をサポートしていません。
- Lakehouse ランタイム カタログは Apache Iceberg ビューをサポートしていません。
クエリ
- BigQuery エンジンの Lakehouse ランタイム カタログ テーブルに対するクエリのパフォーマンスは、標準的な BigQuery テーブルのデータに対するクエリよりも低速になる可能性があります。一般的に、クエリの速度は Cloud Storage からデータを読み取る速度と同等になります。
- Lakehouse ランタイム カタログ テーブルを使用するクエリの BigQuery ドライランで、行が返されても、下限 0 バイトと報告される場合があります。これは、完全なクエリが実行されるまで、テーブルから処理されるデータの量を特定できないためです。クエリを実行すると、このデータの処理に費用がかかります。
- ワイルドカード テーブルのクエリで Lakehouse ランタイム カタログ テーブルを参照することはできません。
API とメタデータ
tabledata.listメソッドを使用して、Lakehouse ランタイム カタログ テーブルからデータを取得することはできません。代わりに、クエリ結果を BigQuery テーブルに保存し、そのテーブルでtabledata.listメソッドを使用できます。- Lakehouse ランタイム カタログ テーブルのテーブル ストレージ統計情報の表示はサポートされていません。
割り当てと上限
- BigQuery の Lakehouse ランタイム カタログ テーブルには、標準テーブルと同じ割り当てと上限が適用されます。
次のステップ
- Apache Iceberg REST カタログ エンドポイントについて理解する。
- BigQuery 用のカスタム Apache Iceberg カタログ エンドポイントについて理解する。