Metabase は、MySQL や PostgreSQL などの様々なデータソースのデータを探索および可視化するための直感的な Web インターフェイスを提供するオープンソースのビジネスインテリジェンス (BI) プラットフォームです。このトピックでは、Metabase を AnalyticDB for MySQL に接続する方法について説明します。
前提条件
-
Java Development Kit (JDK) 21 以降のバージョンがインストールされていること。
-
Metabase がインストールされていること。手順については、「Metabase の公式ドキュメント」をご参照ください。
-
Metabase を実行するサーバーの IP アドレスを、AnalyticDB for MySQL クラスターの IP アドレスホワイトリストに追加済みであること。詳細については、「IP アドレスホワイトリスト」をご参照ください。
-
Spark JDBC エンドポイントに接続するには、Spark インタラクティブリソースグループを作成する必要があります。
Metabase から AnalyticDB for MySQL エンドポイントへの接続
-
AnalyticDB for MySQL クラスターで次のコマンドを実行し、他のデータ型を UNSIGNED INTEGER 型に変換できるようにします。これにより、Metabase はメタデータを正しく取得できるようになります。
SET ADB_CONFIG O_UNSIGNED_AS_BIGINT_ENABLED=true; -
Metabase の Web インターフェイスに移動します。右上隅にある
アイコンをクリックし、ドロップダウンメニューから [Admin Settings] を選択します。 -
上部メニューで [Databases] をクリックし、次に データベースを追加する をクリックします。
-
次のパラメーターを設定し、保存 をクリックします。
パラメーター
説明
データベースタイプ
ドロップダウンリストから [MySQL] を選択します。
表示名
データソースの名前です。カスタム名を入力できます。
ホスト
AnalyticDB for MySQL クラスターのエンドポイントです。
-
Metabase が ECS インスタンスにインストールされており、その ECS インスタンスが AnalyticDB for MySQL クラスターと同じ VPC 内にある場合は、内部エンドポイントを使用します。
-
Metabase がローカルサーバーにインストールされている場合は、パブリックエンドポイントを使用します。
ポート
ポートは 3306 です。
データベース名
AnalyticDB for MySQL クラスター内のデータベースの名前です。
ユーザー名
AnalyticDB for MySQL クラスターのデータベースアカウントのユーザー名です。
パスワード
AnalyticDB for MySQL クラスターのデータベースアカウントのパスワードです。
追加の JDBC 接続文字列オプション
[tinyInt1isBit=false] と入力します。
説明=記号の前後にスペースを追加しないでください。追加した場合、AnalyticDB for MySQL クラスターへの接続後にデータ可視化が失敗します。その他のパラメーター
その他のパラメーターの詳細については、「Metabase の公式ドキュメント」をご参照ください。
-
-
設定が完了したら、AnalyticDB for MySQL に接続してデータ分析を開始できます。データ分析操作の詳細については、「Metabase の公式ドキュメント」をご参照ください。
たとえば、Metabase の [New question] ページで、データソース [ada_mysql] を選択し、SQL エディターに
select * from test3;と入力して [Visualize] をクリックします。これにより、Metabase はクエリ結果を棒グラフなどのチャートとして表示します。
Metabase から Spark JDBC エンドポイントへの接続
-
Metabase の Web インターフェイスに移動します。右上隅にある
アイコンをクリックし、ドロップダウンメニューから [Admin Settings] を選択します。 -
上部メニューで [Databases] をクリックし、次に データベースを追加する をクリックします。
-
次のパラメーターを設定し、保存 をクリックします。

パラメーター
説明
データベースタイプ
ドロップダウンリストから [Spark SQL] を選択します。
表示名
データソースの名前です。カスタム名を入力できます。
ホスト
Spark インタラクティブリソースグループの接続エンドポイントです。エンドポイントを取得する方法については、「前提条件」をご参照ください。
ポート
ポートは 10000 です。
データベース名
AnalyticDB for MySQL クラスター内のデータベースです。
ユーザー名
AnalyticDB for MySQL クラスターのデータベースアカウントのユーザー名です。
パスワード
AnalyticDB for MySQL クラスターのデータベースアカウントのパスワードです。
追加の JDBC 接続文字列オプション
?resource_group=<resource_group_name>を入力します。<resource_group_name>をリソースグループ名に置き換えます。 -
設定が完了したら、AnalyticDB for MySQL に接続してデータ分析を開始できます。データ分析操作の詳細については、「Metabase の公式ドキュメント」をご参照ください。
