本記事では、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公式ドキュメントを参照してください。