メインコンテンツまでスキップ
メインコンテンツまでスキップ

Connect BladePipe to ClickHouse

Community Maintained

BladePipeは、サブ秒のレイテンシでリアルタイムのエンドツーエンドデータ統合ツールであり、プラットフォーム間でシームレスなデータフローを促進します。

ClickHouseはBladePipeの事前構築されたコネクタの一つであり、ユーザーはさまざまなソースからClickHouseにデータを自動的に統合できます。このページでは、リアルタイムでClickHouseにデータをロードする方法をステップバイステップで示します。

Supported sources

現在、BladePipeは以下のソースからClickHouseへのデータ統合をサポートしています:

  • MySQL/MariaDB/AuroraMySQL
  • Oracle
  • PostgreSQL/AuroraPostgreSQL
  • MongoDB
  • Kafka
  • PolarDB-MySQL
  • OceanBase
  • TiDB

さらに多くのソースがサポートされる予定です。

Download and run BladePipe

  1. BladePipe Cloudにログインします。

  2. Install Worker (Docker)またはInstall Worker (Binary)の指示に従ってBladePipe Workerをダウンロードしてインストールします。

注記

代わりに、BladePipe Enterpriseをダウンロードして展開することもできます。

Add ClickHouse as a target

注記
  1. BladePipeはClickHouseバージョン 20.12.3.3 以上をサポートしています。
  2. ClickHouseをターゲットとして使用するには、ユーザーにSELECT、INSERTおよび一般的なDDL権限があることを確認してください。
  1. BladePipeで「DataSource」 > 「Add DataSource」をクリックします。

  2. ClickHouseを選択し、ClickHouseのホストとポート、ユーザー名とパスワードを提供して設定を記入し、「Test Connection」をクリックします。

    Add ClickHouse as a target
  3. 下部の「Add DataSource」をクリックすると、ClickHouseインスタンスが追加されます。

Add MySQL as a source

このチュートリアルでは、MySQLインスタンスをソースとして使用し、MySQLデータをClickHouseにロードするプロセスを説明します。

注記

MySQLをソースとして使用するには、ユーザーが必要な権限を持っていることを確認してください。

  1. BladePipeで「DataSource」 > 「Add DataSource」をクリックします。

  2. MySQLを選択し、MySQLのホストとポート、ユーザー名とパスワードを提供して設定を記入し、「Test Connection」をクリックします。

    Add MySQL as a source
  3. 下部の「Add DataSource」をクリックすると、MySQLインスタンスが追加されます。

Create a pipeline

  1. BladePipeで「DataJob」 > 「Create DataJob」をクリックします。

  2. 追加したMySQLとClickHouseのインスタンスを選択し、「Test Connection」をクリックしてBladePipeがインスタンスに接続されていることを確認します。次に、移動するデータベースを選択します。

    Select source and target
  3. DataJob Typeとして「Incremental」を選択し、「Full Data」オプションを選択します。

    Select sync type
  4. レプリケートするテーブルを選択します。

    Select tables
  5. レプリケートするカラムを選択します。

    Select columns
  6. DataJobの作成を確認し、DataJobが自動で実行されます。

    DataJob is running

Verify the data

  1. MySQLインスタンスでデータの書き込みを停止し、ClickHouseがデータをマージするのを待ちます。
注記

ClickHouseの自動マージのタイミングが予測できないため、OPTIMIZE TABLE xxx FINAL;コマンドを実行することで手動でマージをトリガーすることができます。この手動マージが常に成功するとは限らないことに注意してください。

代わりに、CREATE VIEW xxx_v AS SELECT * FROM xxx FINAL;コマンドを実行してビューを作成し、そのビューに対してクエリを実行してデータが完全にマージされていることを確認できます。

  1. Verification DataJobを作成します。Verification DataJobが完了したら、結果をレビューしてClickHouseのデータがMySQLのデータと同じであることを確認します。
    Verify data