Lakehouse ランタイム カタログの Hive カタログについて

レイクハウス ランタイム カタログは、セルフホストの Hive メタストアの管理を簡素化するサーバーレスの統合メタストアです。この単一のフルマネージド メタデータ レイヤにより、オープンソース ワークロード用に個別のメタデータ ストアを維持する必要がなくなります。Apache Spark、Apache Hive、BigQuery 間でデータをシームレスに共有できます。

Apache Spark ExternalCatalog の互換性を重視して最適化されたこの統合では、Hive Metastore インターフェースのサブセットがサポートされています。ワークロードがトランザクション、圧縮、Kerberos などのサポートされていない機能に依存しているかどうかを確認するには、機能の比較制限事項をご覧ください。

Hive と Lakehouse ランタイム カタログの統合方法

Hive メタストア エンドポイントは、Apache Iceberg テーブルではなく、標準の Apache Hive テーブルと Spark テーブル(Hive SerDes または Spark データソースを使用)を管理します。Spark ジョブをこのエンドポイントに簡単に接続できるように、Managed Service for Apache Spark イメージには必要なクライアント ライブラリと依存関係が事前構成されています。

次のシーケンスは、Spark がメタストアに接続する方法を示しています。

  1. Apache Spark は、標準の Apache Hive IMetastoreClient インターフェースを使用して外部メタデータ カタログに接続します。
  2. Lakehouse ランタイム カタログは、カスタム IMetastoreClient を実装して、Spark と Hive のメタデータ用のフルマネージド メタストア サービスを提供します。
  3. 事前構成済みの Managed Service for Apache Spark ランタイムは、このカスタム クライアントを自動的に使用して、メタデータ オペレーションをメタストアに直接転送します。

設定後、Spark で作成したテーブルに対して BigQuery で直接クエリを実行できます。この統合は、Parquet、ORC、Avro などのさまざまなストレージ形式と、Spark と BigQuery 間の特定のデータ型マッピングをサポートしています。

Hive カタログと Google Cloud サービスの統合方法

Lakehouse for Apache Iceberg がデータを管理する方法については、Hive カタログ アーキテクチャが Google Cloud サービスと統合される方法をご覧ください。セルフホスト メタストアを維持する代わりに、オープンソース ワークロードは Lakehouse ランタイム カタログに接続して Hive データベースとテーブル定義を管理し、基盤となるデータファイルを Cloud Storage ウェアハウス ディレクトリに直接保存します。

次の図は、Managed Service for Apache Spark などのコンピューティング エンジンが Lakehouse ランタイム カタログを使用してテーブル メタデータを管理しながら、Hive で基盤となるデータファイルを直接読み書きする方法を示しています。

Managed Service for Apache Spark、Cloud Storage、Apache Hive カタログなどのレイクハウス アーキテクチャのコンポーネント。
Lakehouse Hive カタログのアーキテクチャ図。

Hive Metastore との機能の比較

次の表に、Hive Metastore と Lakehouse のエンティティとオペレーションを比較します。

エンティティまたはオペレーション Hive メタストア Lakehouse ランタイム カタログ
カタログ
データベース(作成、削除、更新)
テーブル(作成、削除、更新)
パーティション(追加、削除、更新)
テーブルの権限 ✅(Identity and Access Management(IAM)経由)
パーティションの権限 ✅(IAM 経由)
ユーザー定義の関数 非対応
バケット化 / スキュー列 非対応
テーブルとパーティションの列の統計情報 非対応
主な制約 非対応
委任トークン(Kerberos) 非対応
列の権限 非対応
ロール 非対応
ワークロード マネージャーのリソース プラン 非対応
トランザクションと圧縮 非対応

次のステップ