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

AirbyteをClickHouseに接続する

注記

AirbyteのClickHouse用ソースおよびデスティネーションは現在アルファ版であり、大規模なデータセット(> 1000万行)の移動には適していないことにご注意ください。

Airbyteはオープンソースのデータ統合プラットフォームです。これは、140以上の標準接続を備えたELTデータパイプラインの作成を可能にします。このステップバイステップのチュートリアルでは、AirbyteをClickHouseにデスティネーションとして接続し、サンプルデータセットをロードする方法を示します。

1. Airbyteをダウンロードして実行する

  1. AirbyteはDocker上で動作し、docker-composeを使用します。最新バージョンのDockerをダウンロードしてインストールしてください。

  2. 公式のGitHubリポジトリをクローンし、お気に入りのターミナルでdocker-compose upを実行してAirbyteをデプロイします:

  3. ターミナルにAirbyteのバナーが表示されたら、localhost:8000に接続できます。

    Airbyteのバナー
    注記

    また、サインアップしてAirbyte Cloudを使用することもできます。

2. ClickHouseをデスティネーションとして追加する

このセクションでは、ClickHouseインスタンスをデスティネーションとして追加する方法を示します。

  1. ClickHouseサーバーを起動します(AirbyteはClickHouseバージョン21.8.10.19以上と互換性があります)またはClickHouseクラウドアカウントにログインします:

  2. Airbyte内で、「Destinations」ページを選択し、新しいデスティネーションを追加します:

    Airbyteでデスティネーションを追加
  3. 「Destination type」のドロップダウンリストからClickHouseを選択し、「Set up the destination」フォームにClickHouseのホスト名とポート、データベース名、ユーザー名、パスワードを入力し、SSL接続であるかどうかを選択します(clickhouse-client--secureフラグに相当):

    AirbyteでのClickHouseデスティネーション作成
  4. おめでとうございます!今、AirbyteにClickHouseをデスティネーションとして追加しました。

注記

ClickHouseをデスティネーションとして使用するには、使用するユーザーがデータベース、テーブルを作成し、行を挿入する権限を持っている必要があります。Airbyte用の専用ユーザー(例: my_airbyte_user)を作成し、次の権限を与えることをお勧めします:

3. データセットをソースとして追加する

使用するサンプルデータセットは、ニューヨーク市のタクシーデータGitHub上)です。このチュートリアルでは、2022年1月のデータセットのサブセットを使用します。

  1. Airbyte内で、「Sources」ページを選択し、新しいソースのタイプとしてファイルを追加します。

    Airbyteでソースを追加
  2. 「Set up the source」フォームにソースの名前を付け、NYCタクシー2022年1月のファイルのURLを提供します(下記参照)。ファイル形式はparquetを選択し、ストレージプロバイダはHTTPS Public Web、データセット名はnyc_taxi_2022を選択してください。

    AirbyteでのClickHouseソースの作成
  3. おめでとうございます!今、Airbyteにソースファイルを追加しました。

4. 接続を作成してデータセットをClickHouseにロードする

  1. Airbyte内で、「Connections」ページを選択し、新しい接続を追加します。

    Airbyteで接続を追加
  2. 「Use existing source」を選択し、ニューヨーク市タクシーデータを選択し、「Use existing destination」を選択してClickHouseインスタンスを選択します。

  3. 「Set up the connection」フォームに、レプリケーション頻度を選択します(このチュートリアルではmanualを使用します)と、同期したいストリームとしてnyc_taxi_2022を選択します。正規化にはNormalized Tabular Dataを選択してください。

    Airbyteでの接続作成
  4. 接続が作成されたら、「Sync now」をクリックしてデータのロードをトリガーします(Manualをレプリケーション頻度に選択したため)。

    AirbyteでのSync now
  5. データのロードが始まります。ビューを展開してAirbyteのログと進捗を確認できます。操作が完了すると、ログにCompleted successfullyのメッセージが表示されます:

    完了しました
  6. お好みのSQLクライアントを使用してClickHouseインスタンスに接続し、結果のテーブルを確認します:

    レスポンスは以下のようになります:

    レスポンスは次のようになります:

  7. Airbyteは自動的にデータ型を推測し、デスティネーションテーブルに4つのカラムを追加したことに注意してください。これらのカラムは、Airbyteがレプリケーションロジックを管理し、操作をログするために使用されます。詳細はAirbyte公式ドキュメントで確認できます。

    データセットがClickHouseインスタンスにロードされたので、新しいテーブルを作成し、より適切なClickHouseデータ型を使用することができます(詳細)。

  8. おめでとうございます - Airbyteを使用してClickHouseにNYCタクシーデータを正常にロードしました!