本記事では、Supersetを使用してOceanBaseデータベースに接続する方法について説明します。
前提条件
- ローカルでSupersetの設定と実行が完了していること。詳細については、Superset Quick Startを参照してください。
- OceanBaseデータベースがインストール済みで、MySQLモードのテナントが作成されていること。
- 利用可能なデータセットの準備が整っていること。本記事で使用されているサンプルデータセットは、Kaggleから取得したものです。
操作手順
ステップ1:データベース接続文字列を取得する
OceanBaseデータベースのデプロイ担当者または管理者から、該当するデータベース接続文字列を取得します。例:
obclient -h$host -P$port -u$user_name -p$password -D$database_name
パラメータの説明:
$host:OceanBaseデータベースへの接続IPアドレスを提供します。OceanBaseデータベースプロキシ(OceanBase Database Proxy、ODP)接続方式はODPアドレスを使用し、直接接続方式はOBServerノードのIPアドレスを使用します。$port:OceanBaseデータベースへの接続ポートを提供します。ODP接続方式のデフォルトポートは2883で、ODPデプロイ時にカスタマイズ可能です。直接接続方式のデフォルトポートは2881で、OceanBaseデータベースのデプロイ時にカスタマイズ可能です。$database_name:アクセス対象のデータベース名。注意
テナントに接続するユーザーは、データベースに対する
CREATE、INSERT、DROP、およびSELECT権限が付与されていなければなりません。ユーザー権限の詳細については、MySQLモードの権限分類を参照してください。$user_name:テナントの接続アカウント。ODP接続の一般的な形式:ユーザー名@テナント名#クラスタ名またはクラスタ名:テナント名:ユーザー名、直接接続方式の形式:ユーザー名@テナント名。$password:アカウントのパスワード。
接続文字列の詳細については、OBClientを使用してOceanBaseテナントに接続するを参照してください。
例:
obclient -hxxx.xxx.xxx.xxx -P2881 -utest_user001@mysql001 -p****** -Dtest
ステップ2:SupersetコンソールでOceanBaseデータベースに接続する
実行中のSupersetコンソールページを開き、右上で + > Data > Connect database を選択します。
ポップアップウィンドウで、以下の設定を完了します:
- 最初のステップ Select a database to connect で、MySQLデータベースタイプを選択します。
- 次に Enter the required MySQL credentials で、ステップ1:データベース接続文字列を取得する 内の接続文字列情報に基づいて、HOST、PORT、DATABASE NAME、USERNAME、PASSWORD を順次入力します。DISPLAY NAME の内容はカスタマイズ可能です。
CONNECT をクリックし、FINISH をクリックします。
ステップ3:データをインポートし、テーブルを作成する
ステップ1:データベース接続文字列を取得する 内の接続文字列を使用してOceanBaseデータベースにログインし、テーブルを作成します。テーブル作成ステートメントは以下のとおりです:
CREATE TABLE earthquakes ( Place VARCHAR(255), Latitude DECIMAL(10, 6), Longitude DECIMAL(10, 6), Country VARCHAR(100), Continent VARCHAR(100), Magnitude DECIMAL(3, 1) );LOAD DATAステートメントを使用して、準備したデータセットをテーブルにインポートできます。ステートメントの例:LOAD DATA INFILE '/path/earthquake_dataset.csv' INTO TABLE earthquakes FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 LINES (Place, Latitude, Longitude, Country, Continent, Magnitude);データ量が多い場合、またはインポート時にデータ変換が必要な場合は、データロードツールを使用してデータセットをインポートすることを推奨します。
インポートが成功した後、以下のステートメントを使用して検証します:
obclient> SELECT COUNT(*) FROM earthquakes; +----------+ | COUNT(*) | +----------+ | 1264 | +----------+ 1 row in set
ステップ4:Supersetでデータセットを作成する
Supersetコンソールに戻り、右上の + > Data > Create dataset を選択します。
New datasetページで、以下の設定を完了します:
構成パラメータ 説明 DATABASE ステップ2でDISPLAY NAMEとして定義したデータベース名を選択します。 SCHEMA ステップ1で作成したOceanBaseデータベースを選択します。 TABLE ステップ3で作成したテーブルを選択します。 CREATE DATASET AND CREATE CHARTをクリックして、データセットの作成を完了します。
次の操作
データセットを作成した後、実際の状況に応じて、チャートタイプを選択し、CREATE NEW CHARTをクリックして、ニーズに合わせてチャートを設定することができます。チャート設定に関する詳細は、Superset公式ドキュメントを参照してください。