MetabaseをClickHouseに接続する
Metabaseは、あなたのデータに関する質問をするための使いやすいオープンソースのUIツールです。MetabaseはJavaアプリケーションであり、単にJARファイルをダウンロードして、java -jar metabase.jar
で実行することで動かすことができます。MetabaseはJDBCドライバーを使用してClickHouseに接続し、そのドライバーをダウンロードしてplugins
フォルダーに配置します。
目標
このガイドでは、Metabaseを使用してClickHouseのデータにいくつかの質問をし、回答を視覚化します。回答の一つは次のようになります:

使用するデータセットがない場合は、いくつかの例の1つを追加できます。このガイドではUK Price Paidデータセットを使用するため、それを選択することができます。同じドキュメンテーションカテゴリに他のいくつかのデータセットがあります。
1. 接続詳細を収集する
ClickHouseにHTTP(S)で接続するには、次の情報が必要です:
-
HOST と PORT: 通常、ポートはTLSを使用する場合は8443、TLSを使用しない場合は8123です。
-
DATABASE NAME: デフォルトでは、
default
という名前のデータベースがあります。接続したいデータベースの名前を使用してください。 -
USERNAME と PASSWORD: デフォルトでは、ユーザー名は
default
です。あなたのユースケースに適したユーザー名を使用してください。
あなたのClickHouse Cloudサービスの詳細はClickHouse Cloudコンソールで確認できます。接続するサービスを選択し、Connectをクリックしてください:

HTTPSを選択すると、詳細は例のcurl
コマンドに表示されます。

セルフマネージドのClickHouseを使用している場合、接続の詳細はあなたのClickHouse管理者によって設定されています。
2. Metabase用のClickHouseプラグインをダウンロードする
-
plugins
フォルダーがない場合は、metabase.jar
を保存しているフォルダーのサブフォルダーとして作成します。 -
プラグインは、
clickhouse.metabase-driver.jar
という名前のJARファイルです。最新のJARファイルをhttps://github.com/clickhouse/metabase-clickhouse-driver/releases/latestからダウンロードします。 -
clickhouse.metabase-driver.jar
をplugins
フォルダーに保存します。 -
ドライバーが正しく読み込まれるように、Metabaseを起動(または再起動)します。
-
http://hostname:3000でMetabaseにアクセスします。初回の起動時にウェルカムスクリーンが表示され、いくつかの質問を通り抜ける必要があります。データベースを選択するように求められた場合は、" I'll add my data later "を選択します:
3. MetabaseをClickHouseに接続する
-
右上のギアアイコンをクリックし、Admin Settingsを選択してMetabase管理ページに移動します。
-
データベースを追加をクリックします。もしくは、DatabasesタブをクリックしてAdd databaseボタンを選択します。
-
ドライバーのインストールが成功していれば、Database typeのドロップダウンメニューにClickHouseが表示されます:
-
データベースの表示名を設定します。これはMetabaseの設定であり、任意の名前を使用できます。
-
ClickHouseデータベースの接続詳細を入力します。ClickHouseサーバーがSSLを使用するように構成されている場合は、安全な接続を有効にします。例:
-
保存ボタンをクリックすると、Metabaseがデータベース内のテーブルをスキャンします。
4. SQLクエリを実行する
-
右上隅のExit adminボタンをクリックして管理設定を終了します。
-
右上隅で**+ New**メニューをクリックし、質問をしたり、SQLクエリを実行したり、ダッシュボードを構築できることに気付いてください:
-
たとえば、
uk_price_paid
というテーブルで実行されるSQLクエリが、1995年から2022年までの年ごとの平均価格を返します:
5. 質問をする
-
+ Newをクリックし、Questionを選択します。データベースとテーブルから始めて質問を構築できます。たとえば、以下の質問は
default
データベース内のuk_price_paid
テーブルに対して尋ねられたものです。ここでは、グレーター・マンチェスター郡内の町ごとの平均価格を計算するシンプルな質問です: -
視覚化ボタンをクリックして、結果を表形式で表示します。
-
結果の下にあるVisualizationボタンをクリックして視覚化を棒グラフ(または他の利用可能なオプション)に変更します:
詳細を学ぶ
Metabaseについてのさらなる情報やダッシュボードの構築方法については、Metabaseのドキュメントを訪問することで確認できます。