TableauをClickHouseに接続する
ClickHouseは公式のTableauコネクタを提供しており、これは Tableau Exchangeに掲載されています。 このコネクタは、ClickHouseの高度な JDBCドライバに基づいています。
このコネクタを使用すると、TableauはClickHouseデータベースやテーブルをデータソースとして統合します。この機能を有効にするには、 以下のセットアップガイドに従ってください。
使用前に必要な設定
-
接続詳細を収集します
ClickHouseにHTTP(S)で接続するには、次の情報が必要です:
-
HOST と PORT: 通常、ポートはTLSを使用する場合は8443、TLSを使用しない場合は8123です。
-
DATABASE NAME: デフォルトでは、
default
という名前のデータベースがあります。接続したいデータベースの名前を使用してください。 -
USERNAME と PASSWORD: デフォルトでは、ユーザー名は
default
です。あなたのユースケースに適したユーザー名を使用してください。
あなたのClickHouse Cloudサービスの詳細はClickHouse Cloudコンソールで確認できます。接続するサービスを選択し、Connectをクリックしてください:
HTTPSを選択すると、詳細は例の
curl
コマンドに表示されます。セルフマネージドのClickHouseを使用している場合、接続の詳細はあなたのClickHouse管理者によって設定されています。
-
-
Tableau desktopをダウンロードしてインストールします。
-
clickhouse-tableau-connector-jdbc
の指示に従って、互換性のあるClickHouse JDBCドライバのバージョンをダウンロードします。
clickhouse-jdbc-x.x.x-shaded-all.jar JARファイルをダウンロードしてください。現在、バージョン0.8.X
の使用を推奨しています。
- JDBCドライバを以下のフォルダーに保存します(OSに基づき、フォルダーが存在しない場合は作成できます):
- macOS:
~/Library/Tableau/Drivers
- Windows:
C:\Program Files\Tableau\Drivers
- macOS:
- TableauでClickHouseデータソースを構成し、データビジュアライゼーションを作成し始めます!
TableauでClickHouseデータソースを構成する
clickhouse-jdbc
ドライバをインストールし設定したので、ClickHouseのTPCDデータベースに接続するデータソースをTableauで定義する方法を見てみましょう。
-
Tableauを起動します。(既に起動している場合は再起動してください。)
-
左側のメニューから、サーバーへの接続セクションにあるその他をクリックします。利用可能なコネクタリストでClickHouse by ClickHouseを検索します:

コネクタリストにClickHouse by ClickHouseが表示されない場合、古いTableau Desktopバージョンが原因かもしれません。 その場合、Tableau Desktopアプリケーションをアップグレードするか、コネクタを手動でインストールしてみてください。
- ClickHouse by ClickHouseをクリックすると、以下のダイアログが表示されます:

- インストールしてTableauを再起動をクリックします。アプリケーションを再起動します。
- 再起動後、コネクタの完全名は
ClickHouse JDBC by ClickHouse, Inc.
になります。それをクリックすると、以下のダイアログが表示されます:

-
接続詳細を入力します:
設定 値 サーバー あなたのClickHouseホスト(接頭辞や接尾辞なし) ポート 8443 データベース default ユーザー名 default パスワード ****
ClickHouse cloudを利用している場合、安全な接続のためにSSLチェックボックスを有効にする必要があります。
私たちのClickHouseデータベースの名前はTPCDですが、上記のダイアログでデータベースをdefaultに設定し、次のステップでスキーマにTPCDを選択する必要があります。(これはコネクタのバグによるもので、この動作は変更される可能性がありますが、現在はdefaultをデータベースとして使用する必要があります。)
- サインインボタンをクリックすると、新しいTableauワークブックが表示されます:

- スキーマのドロップダウンからTPCDを選択すると、TPCD内のテーブルの一覧が表示されます:

これでTableauでビジュアライゼーションを構築する準備が整いました!
Tableauでビジュアライゼーションを作成する
TableauにClickHouseデータソースが構成されたので、データを可視化してみましょう...
- CUSTOMERテーブルをワークブックにドラッグします。カラムは表示されますが、データテーブルは空です:

-
今すぐ更新ボタンをクリックすると、CUSTOMERから100行がテーブルを埋めます。
-
ORDERSテーブルをワークブックにドラッグし、2つのテーブル間のリレーションシップフィールドとしてCustkeyを設定します:

- 現在、ORDERSテーブルとLINEITEMテーブルがデータソースとして関連付けられたので、このリレーションシップを使用してデータに関する質問に答えることができます。ワークブックの下にあるSheet 1タブを選択します。

- 例えば、毎年どれだけの特定のアイテムが注文されたかを知りたいとします。ORDERSのOrderDateをColumnsセクション(水平フィールド)にドラッグし、次にLINEITEMのQuantityをRowsにドラッグします。Tableauは次のような折れ線グラフを生成します:

それほど興味深い折れ線グラフではありませんが、データセットはスクリプトによって生成され、クエリパフォーマンスをテストするために構築されたため、TCPDデータのシミュレートされたオーダーにはあまり変動がないことに気付くでしょう。
-
四半期ごとの平均注文額(ドル)や配送モード(航空、郵送、船、トラックなど)を知りたいとしましょう:
- 新しいワークシートタブをクリックして新しいシートを作成します
- ORDERSからOrderDateをColumnsにドラッグし、それを年から四半期に変更します
- LINEITEMからShipmodeをRowsにドラッグします
次のようになります:

- Abcの値は、テーブルにメトリックをドラッグするまでのスペースを埋めるためのものです。ORDERSからTotalpriceをテーブルにドラッグします。デフォルトの計算はTotalpricesのSUMとなります:

- SUMをクリックしてMeasureをAverageに変更します。同じドロップダウンメニューからFormatを選択し、Numbersを**Currency (Standard)**に変更します:

よくできました!あなたはTableauをClickHouseに正常に接続し、ClickHouseデータを分析し可視化するための無限の可能性を開きました。
コネクタを手動でインストールする
コネクタがデフォルトで含まれていない古いTableau Desktopバージョンを使用している場合、以下の手順に従って手動でインストールできます:
- Tableau Exchangeから最新のtacoファイルをダウンロードします
- tacoファイルを次の場所に置きます:
- macOS:
~/Documents/My Tableau Repository/Connectors
- Windows:
C:\Users\[Windows User]\Documents\My Tableau Repository\Connectors
- macOS:
- Tableau Desktopを再起動します。設定が成功した場合、
新しいデータソース
セクションにコネクタが表示されます。
接続と分析のヒント
Tableau-ClickHouse統合を最適化するためのさらなるガイダンスについては、 接続のヒントと分析のヒントをご覧ください。
テスト
このコネクタはTDVTフレームワークでテストされており、現在97%のカバレッジ比率を維持しています。
概要
一般的なODBC/JDBC ClickHouseドライバを使用してTableauをClickHouseに接続できます。ただし、このコネクタは接続設定プロセスを簡素化します。コネクタに問題がある場合は、GitHubにお問い合わせください。