メインコンテンツへスキップ
メインコンテンツへスキップ

Superset を ClickHouse に接続する

ClickHouse Supported

Apache Superset は、Python で構築されたオープンソースのデータ探索および可視化プラットフォームです。Superset は、ClickHouse が提供する Python ドライバーを使用して ClickHouse に接続します。ここでは、その仕組みを見ていきましょう。

目標

このガイドでは、ClickHouse データベースのデータを用いて、Superset でダッシュボードを作成します。ダッシュボードは次のようになります。

複数の円グラフやテーブルなどの可視化を含む、英国の不動産価格を表示している Superset ダッシュボード

データを追加する

まだ扱うデータセットを持っていない場合は、サンプルデータセットのいずれかを追加できます。このガイドでは UK Price Paid データセットを使用しているので、それを選択するとよいでしょう。同じドキュメントカテゴリには、他にもいくつかのデータセットが用意されています。

1. 接続情報を準備する

HTTP(S) で ClickHouse に接続するには、次の情報が必要です。

Parameter(s)Description
HOST and PORT通常、TLS を使用する場合のポートは 8443、TLS を使用しない場合のポートは 8123 です。
DATABASE NAME既定で default という名前のデータベースが用意されています。接続したいデータベースの名前を使用してください。
USERNAME and PASSWORD既定のユーザー名は default です。用途に応じて適切なユーザー名を使用してください。

ClickHouse Cloud サービスに関する詳細情報は、ClickHouse Cloud コンソールで確認できます。 サービスを選択し、Connect をクリックします。

ClickHouse Cloud サービスの Connect ボタン

HTTPS を選択します。接続情報は、サンプルの curl コマンド内に表示されます。

ClickHouse Cloud HTTPS 接続詳細

自己管理型の ClickHouse を使用している場合、接続情報は ClickHouse 管理者によって設定されます。

2. ドライバーをインストールする

  1. Superset は ClickHouse に接続するために clickhouse-connect ドライバーを使用します。clickhouse-connect の詳細は https://pypi.org/project/clickhouse-connect/ に記載されており、次のコマンドでインストールできます:

    pip install clickhouse-connect
    
  2. Superset を起動(または再起動)します。

3. Superset を ClickHouse に接続する

  1. Superset で、上部メニューから Data を選択し、ドロップダウンメニューから Databases を選択します。+ Database ボタンをクリックして新しいデータベースを追加します:
Superset のインターフェイスで、Database メニューと強調��表示された + Database ボタンが表示されている画面

  1. 最初のステップで、データベース種別として ClickHouse Connect を選択します:
ClickHouse Connect オプションが選択された Superset のデータベース接続ウィザード

  1. 2 番目のステップでは、次の設定を行います:
  • SSL を有効または無効に設定します。
  • 先ほど収集した接続情報を入力します。
  • DISPLAY NAME を指定します。ここには任意の名前を設定できます。複数の ClickHouse データベースに接続する場合は、より説明的な名前にしてください。
ClickHouse 接続パラメータを示す Superset の接続設定フォーム

  1. CONNECT ボタンをクリックし、続けて FINISH ボタンをクリックしてセットアップウィザードを完了します。完了後、データベース一覧に対象のデータベースが表示されます。

4. データセットを追加する

  1. Superset で ClickHouse のデータを操作するには、dataset を定義する必要があります。Superset の上部メニューから Data を選択し、ドロップダウンメニューで Datasets を選択します。

  2. データセットを追加するボタンをクリックします。新しいデータベースをデータソースとして選択すると、そのデータベース内で定義されているテーブルが表示されます。

ClickHouse データベースから利用可能なテーブルが表示された Superset のデータセット作成ダイアログ

  1. ダイアログウィンドウの下部にある ADD ボタンをクリックすると、テーブルがデータセット一覧に表示されます。これでダッシュボードを作成し、ClickHouse のデータを分析する準備が整いました。

5. Superset でチャートとダッシュボードを作成する

Superset に慣れている場合は、このセクションもすぐに馴染めるはずです。Superset を初めて使う場合でも、世の中にある他の多くの優れた可視化ツールと同様に、使い始めるのに時間はかからず、細かな設定やちょっとしたコツは、ツールを使い込む中で徐々に身についていきます。

  1. まずはダッシュボードを作成します。Superset の上部メニューから Dashboards を選択します。右上のボタンをクリックして、新しいダッシュボードを追加します。次のダッシュボードは UK property prices という名前です:
チャートを追加する準備ができた UK property prices という名前の空の Superset ダッシュボード

  1. 新しいチャートを作成するには、上部メニューから Charts を選択し、新しいチャートを追加するボタンをクリックします。多くのオプションが表示されます。次の例では、CHOOSE A DATASET ドロップダウンメニューから uk_price_paid データセットを選択し、可視化タイプとして Pie Chart を使用しています:
Pie Chart 可視化タイプが選択された Superset のチャート作成インターフェイス

  1. Superset の円グラフには DimensionMetric が必要で、それ以外の設定は任意です。Dimension と Metric に使うフィールドは自由に選択できます。この例では、Dimension に ClickHouse のフィールド district を、Metric に AVG(price) を使用しています。
円グラフの Dimension 設定で district フィールドが選択されている例
円グラフの Metric 設定で AVG(price) 集計関数が選択されている例

  1. 円グラフよりドーナツチャートが好みであれば、CUSTOMIZE セクションでその設定やその他のオプションを変更できます:
ドーナツチャートのオプションとその他の円グラフ設定を示す Customize パネル

  1. SAVE ボタンをクリックしてチャートを保存し、ADD TO DASHBOARD ドロップダウンから UK property prices を選択してから SAVE & GO TO DASHBOARD をクリックすると、チャートが保存されてダッシュボードに追加されます:
ダッシュボード選択ドロップダウンと Save & Go to Dashboard ボタンが表示されたチャート保存ダイアログ

  1. 以上です。ClickHouse のデータに基づいて Superset でダッシュボードを構築することで、超高速なデータ分析の世界が一気に広がります。
ClickHouse の UK property price データを複数の可視化で表示した完成済み Superset ダッシュボード