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

Tableau を ClickHouse に接続する

ClickHouse Supported

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

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

利用開始前のセットアップ

  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. Tableau Desktop をダウンロードしてインストールします。

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

注記

clickhouse-jdbc-X.X.X-all-dependencies.jar JAR ファイルを必ずダウンロードしてください。このアーティファクトはバージョン 0.9.2 から利用可能です。

  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. 左側メニューの To a Server セクションで More をクリックします。利用可能なコネクタ一覧で ClickHouse by ClickHouse を検索します:

ClickHouse by ClickHouse オプションがハイライトされたコネクタ選択メニューを表示している Tableau の接続画面

注記

コネクタ一覧に ClickHouse by ClickHouse が見つからない場合は、古いバージョンの Tableau Desktop を使用している可能性があります。 その場合は、Tableau Desktop アプリケーションのアップグレードを検討するか、コネクタを手動でインストールしてください。

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

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

  1. 接続情報を入力します:

    SettingValue
    Serverプレフィックスやサフィックスを付けない ClickHouse ホスト名
    Port8443
    Databasedefault
    Usernamedefault
    Password****
注記

ClickHouse Cloud を利用する場合は、安全な接続のために SSL のチェックボックスを有効にする必要があります。


注記

今回の ClickHouse データベース名は TPCD ですが、上のダイアログでは Databasedefault に設定し、その次のステップで SchemaTPCD を選択する必要があります。(これはコネクタ側のバグによるものと思われ、この動作は将来的に変更される可能性がありますが、 現時点ではデータベースとして default を使用する必要があります。)

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

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

これで Tableau で可視化を作成する準備が整いました。

Tableau での可視化の作成

Tableau で ClickHouse のデータソースを構成できたので、さっそくデータを可視化してみましょう。

  1. CUSTOMER テーブルをワークブック上にドラッグします。列は表示されますが、データテーブルは空であることが分かります:
CUSTOMER テーブルをキャンバスにドラッグし、列ヘッダーのみが表示されていてデータが空の Tableau ワークブック

  1. Update Now ボタンをクリックすると、CUSTOMER から 100 行がテーブルに読み込まれます。

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

Custkey フィールドを使って CUSTOMER テーブルと ORDERS テーブルを関連付けている Tableau のリレーションシップエディター

  1. これで、データソースとして ORDERSLINEITEM テーブルが互いに関連付けられました。このリレーションシップを利用して、 データに関するさまざまな問いに答えることができます。ワークブック下部の Sheet 1 タブを選択します。
分析に利用可能な ClickHouse テーブルのディメンションとメジャーが表示されている Tableau のワークシート

  1. たとえば、特定のアイテムが各年にどれだけ注文されたかを知りたいとします。ORDERSOrderDateColumns セクション(横方向のフィールド)にドラッグし、LINEITEMQuantityRows にドラッグします。Tableau は 次のような折れ線グラフを生成します:
ClickHouse データから年別の注文数量を示す Tableau の折れ線グラフ

あまり面白い折れ線グラフではありませんが、このデータセットはスクリプトによって生成され、クエリのパフォーマンステスト用に構築されているため、 TCPD データのシミュレートされた注文には大きな変動がないことに気付くでしょう。

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

    • New Worksheet タブをクリックして新しいシートを作成します
    • ORDERSOrderDateColumns にドラッグし、Year から Quarter に変更します
    • LINEITEMShipmodeRows にドラッグします

次のように表示されるはずです:

列に四半期、行に配送モードが表示された Tableau のクロス集計ビュー

  1. Abc の値は、テーブルにメトリクスをドラッグするまでの空きスペースを埋めるプレースホルダーです。ORDERSTotalprice をテーブル上にドラッグします。 デフォルトの集計は TotalpricesSUM(合計)になっていることに注意してください:
四半期と配送モードごとの合計注文金額が表示された Tableau のクロス集計

  1. SUM をクリックし、MeasureAverage に変更します。同じドロップダウンメニューから Format を選択し、 NumbersCurrency (Standard) に変更します:
四半期と配送モードごとの平均注文金額が通貨形式で表示された 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 を再起動します。インストールが正常に完了していれば、「New Data Source」セクションにコネクタが表示されます。

接続と分析に関するヒント

Tableau と ClickHouse の統合を最適化するための、より詳しい説明やベストプラクティスについては、接続のヒント および 分析のヒント を参照してください。

テスト

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

概要

Tableau を ClickHouse に接続するには、汎用の ODBC/JDBC 用 ClickHouse ドライバーを使用できます。ただし、このコネクターを使用すると、接続設定の手順を簡略化できます。コネクターに関して問題が発生した場合は、GitHub でお気軽にお問い合わせください。