メインコンテンツへスキップ
ClickHouse は、複数のカタログ (Unity、Glue、Polaris など) とのインテグレーションをサポートしています。このガイドでは、ClickHouse を介して Lakehouse runtime catalog (別名 BigLake Metastore) 内の Iceberg テーブルをクエリする手順を説明します。
この機能はベータのため、次の設定を有効にする必要があります。 SET allow_database_iceberg = 1;

前提条件

ClickHouse から Lakehouse runtime catalog (BigLake Metastore) への接続を作成する前に、以下を用意してください。
  • Lakehouse runtime catalog が有効になっている Google Cloud プロジェクト
  • Google Cloud Console で作成した、アプリケーション用の Application Default credentials (OAuth クライアント ID とクライアント シークレット)
  • 適切なスコープ (例: https://www.googleapis.com/auth/bigquery および GCS 用の storage スコープ) で OAuth フローを完了して取得した リフレッシュ トークン
  • warehouse パス: テーブルが保存されている GCS バケット (必要に応じてプレフィックスを含む) 。例: gs://your-bucket または gs://your-bucket/prefix

Lakehouse runtime catalog と ClickHouse の接続を作成する

OAuth 認証情報を用意したら、DataLakeCatalog データベースエンジンを使用するデータベースを ClickHouse に作成します:

ClickHouse から Lakehouse runtime catalog のテーブルをクエリする

接続を作成したら、Lakehouse runtime catalog に登録されているテーブルをクエリできます。
出力例:
バッククォートが必要ですClickHouse は複数のネームスペースをサポートしていないため、バッククォートが必要です。
テーブル定義を確認するには:

Lakehouse から ClickHouse へのデータの取り込み

Lakehouse runtime catalog のテーブルからローカルの ClickHouse テーブルにデータを取り込み、繰り返し実行するクエリを高速化するには、MergeTree テーブルを作成し、カタログからデータを挿入します:
初期ロード後は、レイテンシを抑えるために clickhouse_table に対してクエリを実行します。必要に応じて INSERT INTO ... SELECT を再実行し、BigLake のデータを更新してください。
最終更新日 2026年7月2日