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

TableauをClickHouseに接続する

ClickHouseは公式のTableauコネクタを提供しており、Tableau Exchangeに掲載されています。このコネクタはClickHouseの高度なJDBCドライバを基にしています。

このコネクタを使用することで、TableauはClickHouseのデータベースやテーブルをデータソースとして統合します。この機能を有効にするには、以下のセットアップガイドに従ってください。

使用前に必要なセットアップ

  1. 接続の詳細を集める

    To connect to ClickHouse with HTTP(S) you need this information:

    • The HOST and PORT: typically, the port is 8443 when using TLS or 8123 when not using TLS.

    • The DATABASE NAME: out of the box, there is a database named default, use the name of the database that you want to connect to.

    • The USERNAME and PASSWORD: out of the box, the username is default. Use the username appropriate for your use case.

    The details for your ClickHouse Cloud service are available in the ClickHouse Cloud console. Select the service that you will connect to and click Connect:

    ClickHouse Cloud service connect button

    Choose HTTPS, and the details are available in an example curl command.

    ClickHouse Cloud HTTPS connection details

    If you are using self-managed ClickHouse, the connection details are set by your ClickHouse administrator.


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

    • HOSTとPORT: 通常、ポートはTLSを使用する場合は8443、TLSを使用しない場合は8123です。

    • DATABASE NAME: デフォルトでは、defaultという名前のデータベースがあります。接続したいデータベースの名前を使用してください。

    • USERNAMEとPASSWORD: デフォルトでは、ユーザー名はdefaultです。ご利用のケースに適したユーザー名を使用してください。

    ClickHouse Cloudサービスの詳細はClickHouse Cloudコンソールで確認できます。接続するサービスを選択し、Connectをクリックします:

    ClickHouse Cloud service connect button

    HTTPSを選択すると、詳細が例のcurlコマンドで提供されます。

    ClickHouse Cloud HTTPS connection details

    セルフマネージドのClickHouseを使用している場合、接続の詳細はClickHouseの管理者によって設定されます。

  2. Tableau desktopをダウンロードしてインストールします。

  3. clickhouse-tableau-connector-jdbcの指示に従って、ClickHouse JDBCドライバの互換性のあるバージョンをダウンロードします。

注記

clickhouse-jdbc-x.x.x-shaded-all.jar JARファイルをダウンロードしてください。現在、バージョン0.8.Xの使用を推奨しています。

  1. JDBCドライバを以下のフォルダに保存します(OSに応じて、フォルダが存在しない場合は新しく作成できます):
    • macOS: ~/Library/Tableau/Drivers
    • Windows: C:\Program Files\Tableau\Drivers
  2. TableauでClickHouseデータソースを構成し、データビジュアライゼーションの作成を開始します!

TableauでClickHouseデータソースを構成する

clickhouse-jdbcドライバがインストールされ、設定されたので、ClickHouseのTPCDデータベースに接続するデータソースをTableauで定義する方法を見てみましょう。

  1. Tableauを起動します。(既に起動している場合は再起動します。)

  2. 左側のメニューから、サーバーに接続セクションのその他をクリックします。利用可能なコネクタのリストからClickHouse by ClickHouseを検索します:

コネクタ選択メニューに「ClickHouse by ClickHouse」オプションが�ハイライトされたTableau接続画面

注記

コネクタのリストにClickHouse by ClickHouseが表示されないですか?それは古いTableau Desktopバージョンに関連している可能性があります。それを解決するには、Tableau Desktopアプリケーションをアップグレードするか、コネクタを手動でインストールすることを検討してください。

  1. ClickHouse by ClickHouseをクリックすると、以下のダイアログがポップアップします:
TableauコネクタインストールダイアログにClickHouse JDBCコネクタの詳細とインストールボタンが表示されている

  1. インストールしてTableauを再起動をクリックします。アプリケーションを再起動します。
  2. 再起動後、コネクタは完全な名称で表示されます:ClickHouse JDBC by ClickHouse, Inc.。これをクリックすると、以下のダイアログがポップアップします:
Tableauの接続ダイアログにサーバー、ポート、データベース、ユーザー名、パスワードのフィールドが表示されている

  1. 接続の詳細を入力します:

    設定
    サーバーあなたのClickHouseホスト(プレフィックスやサフィックスなし)
    ポート8443
    データベースdefault
    ユーザー名default
    パスワード****
注記

ClickHouseクラウドを使用する場合、セキュア接続のためにSSLチェックボックスを有効にする必要があります。


注記

私たちのClickHouseデータベースはTPCDという名前ですが、上記のダイアログではデータベースdefaultに設定し、次のステップでスキーマTPCDを選択してください。(これはコネクタのバグによるものと思われるため、この動作は変更される可能性がありますが、現時点ではデータベースにはdefaultを使用する必要があります。)

  1. サインインボタンをクリックすると、新しいTableauワークブックが表示されます:
新しいTableauワークブックの初期接続画面がデータベース選択オプションと共に表示されている

  1. スキーマのドロップダウンからTPCDを選択すると、TPCD内のテーブルのリストが表示されます:
Tableauスキーマ選択がTPCDデータベースのテーブル(CUSTOMER、LINEITEM、NATION、ORDERSなど)を表示している

これでTableauでビジュアライゼーションを作成する準備が整いました!

Tableauでビジュアライゼーションを構築する

TableauでClickHouseデータソースが設定されたので、データを視覚化してみましょう...

  1. CUSTOMERテーブルをワークブックにドラッグします。カラムが表示されますが、データテーブルは空です:
CUSTOMERテーブルをキャンバスにドラッグしたTableauワークブック、カラムヘッダーは表示されているがデータはない

  1. 今すぐ更新ボタンをクリックすると、CUSTOMERから100行がテーブルに入ります。

  2. ORDERSテーブルをワークブックにドラッグし、両方のテーブル間のリレーションシップフィールドをCustkeyとして設定します:

CUSTOMERとORDERSテーブル間の接続をCustkeyフィールドを使用して表示しているTableauリレーションシップエディタ

  1. ORDERSおよびLINEITEMテーブルがデータソースとして関連付けられたので、この関係を利用してデータに関する質問に答えることができます。ワークブックの下部でシート1タブを選択します。
分析に利用可能なClickHouseテーブルの次元やメジャーを表示しているTableauワークシート

  1. 特定のアイテムが毎年いくつ注文されたかを知りたいとします。ORDERSからOrderDateColumnsセクション(横のフィールド)にドラッグし、LINEITEMからQuantityRowsにドラッグします。Tableauは以下の折れ線グラフを生成します:
ClickHouseデータから年ごとの注文数量を表示するTableau折れ線グラフ

あまり魅力的な折れ線グラフではありませんが、このデータセットはスクリプトによって生成され、クエリパフォーマンスをテストするために構築されたため、TPCDデータのシミュレートされた注文にはあまり変動がないことに注意してください。

  1. 各四半期の平均注文額(ドル単位)を知りたいとします。また、配送モード(航空、郵便、船、トラックなど)についても:

    • 新しいワークシートタブをクリックして新しいシートを作成します。
    • ORDERSからOrderDateColumnsにドラッグし、YearからQuarterに変更します。
    • LINEITEMからShipmodeRowsにドラッグします。

以下のようになります:

四半期を列、配送モードを行としたTableauのクロス集計ビュー

  1. Abcの値は、テーブルにメトリックをドラッグするまでのスペースを埋めているだけです。ORDERSからTotalpriceをテーブルにドラッグします。デフォルトの計算がTotalpricesSUMであることに注意してください:
四半期と配送モードごとの合計価格の合計を表示しているTableauのクロス集計

  1. SUMをクリックし、MeasureAverageに変更します。同じドロップダウンメニューからFormatを選択し、Numbersを**通貨(標準)**に変更します:
通貨フォーマット付きの四半期および配送モードごとの平均注文価格を表示しているTableau��のクロス集計

素晴らしい!TableauをClickHouseに接続し、ClickHouseデータの分析と視覚化に向けた新たな可能性を開拓しました。

コネクタを手動でインストールする

デフォルトでコネクタが含まれていない古いTableau Desktopバージョンを使用している場合は、次の手順に従って手動でインストールできます:

  1. Tableau Exchangeから最新のtacoファイルをダウンロードします。
  2. tacoファイルを以下の場所に置きます:
    • macOS: ~/Documents/My Tableau Repository/Connectors
    • Windows: C:\Users\[Windows User]\Documents\My Tableau Repository\Connectors
  3. Tableau Desktopを再起動します。設定が成功した場合は、新しいデータソースセクションにコネクタが表示されます。

接続と分析のヒント

Tableau-ClickHouse統合の最適化に関するさらなるガイダンスについては、接続のヒントおよび分析のヒントをご覧ください。

テスト

コネクタはTDVTフレームワークでテストされており、現在97%のカバレッジ比率を維持しています。

まとめ

一般的なODBC/JDBC ClickHouseドライバを使用してTableauをClickHouseに接続できます。ただし、このコネクタは接続設定プロセスを簡素化します。コネクタに関して問題がある場合は、お気軽にGitHubでお問い合わせください。