Estuary と ClickHouse を接続する
Estuary は、簡単にセットアップできる ETL パイプラインでリアルタイムデータとバッチデータを柔軟に統合する right-time データプラットフォームです。エンタープライズグレードのセキュリティとデプロイメントオプションにより、Estuary は SaaS、データベース、ストリーミングソースから、ClickHouse を含むさまざまな送信先への永続的なデータフローを実現します。
Estuary は Kafka ClickPipe を介して ClickHouse と接続します。この連携では、独自の Kafka エコシステムを運用・管理する必要はありません。
セットアップガイド
前提条件
- Estuary アカウント
- 目的のソースからデータを取得する、Estuary 内の 1 つ以上の capture
- ClickPipe 権限を持つ ClickHouse Cloud アカウント
Estuary の materialization を作成する
Estuary のソースコレクションから ClickHouse にデータを移動するには、まず materialization を作成する必要があります。
-
Estuary のダッシュボードで Destinations ページに移動します。
-
+ New Materialization をクリックします。
-
ClickHouse コネクタを選択します。
-
Materialization、Endpoint、Source Collections セクションの詳細を入力します:
-
Materialization Details: materialization の一意な名前を指定し、データプレーン(クラウドプロバイダとリージョン)を選択します
-
Endpoint Config: セキュアな Auth Token を指定します
-
Source Collections: 既存の capture をリンクするか、ClickHouse に公開するデータコレクションを選択します
-
-
Next をクリックし、続けて Save and Publish をクリックします。
-
Materialization の詳細ページで、ClickHouse 向け materialization のフルネームを控えておきます。これは
your-tenant/your-unique-name/dekaf-clickhouseのような形式になります。
Estuary は、選択したコレクションを Kafka メッセージとしてストリーミングを開始します。ClickHouse は、Estuary の broker 情報と指定した auth token を用いた Kafka ClickPipe を介してこのデータにアクセスできます。
Kafka 接続情報を入力する
ClickHouse で新しい Kafka ClickPipe をセットアップし、接続情報を入力します:
-
ClickHouse Cloud のダッシュボードで Data sources を選択します。
-
新しい ClickPipe を作成します。
-
データソースとして Apache Kafka を選択します。
-
Estuary の broker と registry 情報を用いて Kafka 接続情報を入力します:
- ClickPipe の名前を指定します
- broker には次を使用します:
dekaf.estuary-data.com:9092 - 認証はデフォルトの
SASL/PLAINオプションのままにします - user には、Estuary の materialization のフルネーム(
your-tenant/your-unique-name/dekaf-clickhouseなど)を入力します - password には、materialization 用に指定した auth token を入力します
-
schema registry オプションを有効にします
- schema URL には次を使用します:
https://dekaf.estuary-data.com - schema key は broker user(materialization 名)と同じになります
- secret は broker password(auth token)と同じになります
- schema URL には次を使用します:
受信データを設定する
-
Kafka の topic の 1 つ(Estuary からのデータコレクションの 1 つ)を選択します。
-
offset を選択します。
-
ClickHouse が topic メッセージを検出します。テーブル情報を構成するために Parse information セクションに進むことができます。
-
新しいテーブルを作成するか、一致する既存テーブルにデータをロードするかを選択します。
-
ソースフィールドをテーブルのカラムにマッピングし、カラム名、型、Nullable かどうかを確認します。
-
最後の Details and settings セクションで、専用データベースユーザーの権限を選択できます。
構成内容に問題がなければ、ClickPipe を作成します。
ClickHouse は新しいデータソースをプロビジョニングし、Estuary からのメッセージの取り込みを開始します。必要なだけ多くの ClickPipe を作成し、目的のすべてのデータコレクションからストリーミングできます。
追加リソース
Estuary との統合設定の詳細については、Estuary のドキュメントを参照してください:
-
Estuary の ClickHouse materialization に関するドキュメント を参照してください。
-
Estuary は Dekaf を使用してデータを Kafka メッセージとして公開します。Dekaf の詳細はこちらを参照してください。
-
Estuary を使って ClickHouse にストリーミングできるソースの一覧については、Estuary の capture コネクタ を参照してください。