BigLake Metastore
Beta feature. Learn more.
ClickHouse は、複数のカタログ(Unity、Glue、Polaris など)との統合をサポートしています。このガイドでは、ClickHouse 経由で BigLake Metastore 内の Iceberg テーブルをクエリする手順を説明します。
注記
この機能はベータ版のため、以下を使用して有効にする必要があります。
SET allow_database_iceberg = 1;
前提条件
ClickHouse から BigLake Metastore への接続を作成する前に、次のものがあることを確認してください。
- BigLake Metastore が有効になっている 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
BigLake Metastore と ClickHouse の接続を作成する
OAuth 認証情報を設定したら、DataLakeCatalog データベースエンジンを使用するデータベースを ClickHouse に作成します:
ClickHouse を使用した BigLake Metastore テーブルのクエリ
接続を作成したら、BigLake Metastore に登録されているテーブルをクエリできます。
出力例:
Backticks required
ClickHouse は複数のネームスペースをサポートしていないため、バッククォートが必要です。
テーブル定義を確認するには:
BigLake から ClickHouse へのデータの読み込み
繰り返し実行するクエリを高速化するため、BigLake Metastore テーブルからローカルの ClickHouse テーブルにデータを読み込むには、MergeTree テーブルを作成し、カタログから挿入します。
初回ロード後は、より低レイテンシで利用するために clickhouse_table をクエリします。必要に応じて BigLake からデータを更新するには、INSERT INTO ... SELECT を再実行します。