FineBI を AnalyticDB for MySQL に接続することで、ビジュアルインターフェイスを介してデータを管理できます。これにより、フィルタリング、グループ化、集約、列の追加、フィールド設定、ソートなど、さまざまなデータ管理操作が可能になり、データ統合の容易さと効率性が大幅に向上します。
前提条件
-
FineBI のバージョンが AnalyticDB for MySQL と互換性があることを確認してください。詳細については、「互換性の概要」をご参照ください。
-
MySQL JDBC ドライバーがインストールされている必要があります。
-
AnalyticDB for MySQL エンジンへの直接接続に必要な、リアルタイムデータをサポートする FineBI 5.0 以降のバージョンがインストールされている必要があります。詳細については、「リアルタイムデータ (直接接続)」をご参照ください。
-
FineBI を初めてインストールする場合、FineBI メタデータを保存するために、ApsaraDB RDS for MySQL などの MySQL サーバーが必要です。詳細については、「MySQL データ接続」をご参照ください。
-
インターネット経由で AnalyticDB for MySQL クラスターに接続する必要がある場合は、パブリックエンドポイントを申請してください。
外部 MySQL データベースの構成
FineBI を既にインストールして使用している場合は、このセクションをスキップして、AnalyticDB for MySQL クラスターへの接続に進むことができます。手順の詳細は、「AnalyticDB for MySQL への接続」をご参照ください。
-
FineBI を開きます。
-
サーバーアドレスをクリックし、プロンプトに従って [Account Settings] を構成します。
-
次へ をクリックし、データベースを選択してから、[External Database] セクションで [Configure Database] をクリックします。
-
「External Database Configuration」ページで、プロンプトに従ってパラメータを構成します。
説明FineBI のメタデータを保存するための MySQL データベースの接続情報を入力してください。AnalyticDB for MySQL データベースの接続情報ではありません。
パラメータ
説明
データベースタイプ
データの準備 を選択します。
リアルタイムデータ
com.mysql.jdbc.Driverを選択します。データベース名
FineBI メタデータが保存されるデータベースの名前。新しいデータベースを作成することもできます。例えば、
finedbという名前のデータベースを作成すると、FineBI は MySQL サーバーへの接続後、自動的にcreate database finedb;ステートメントを実行します。ホスト
MySQL サーバーのアドレス。
ポート
MySQL サーバーのポート番号。デフォルトは 3306 です。
ユーザー名
MySQL サーバーで作成されたアカウントのユーザー名。
パスワード
指定したユーザー名のパスワード。
[URL]
接続 URL はシステムによって自動的に生成されます。
-
パラメータを構成したら、[Enable New Database] をクリックして、FineBI メタデータのインポートを開始します。
-
メタデータのインポートが完了したら、[Logon] をクリックして MySQL サーバーにログオンします。
AnalyticDB for MySQL への接続
-
FineBI を開きます。ナビゲーションペインで、 を選択します。

-
「データベース接続」ページで、AnalyticDB for MySQL データベースの接続情報を入力します。

パラメータ
説明
[Data connection name]
データ接続を識別しやすいように、わかりやすい名前を入力します。
[Driver]
com.mysql.jdbc.Driverを選択します。データベース名
AnalyticDB for MySQL クラスター内のデータベースの名前。
MySQL
AnalyticDB for MySQL クラスターのパブリックエンドポイントまたは VPC エンドポイント。
エンドポイントとポート情報は、ネットワーク情報 ページの クラスター情報 セクションで確認できます。詳細については、「エンドポイント」をご参照ください。
ポート
ポート番号。デフォルトは 3306 です。
ユーザー名
AnalyticDB for MySQL クラスターへの接続に使用するアカウント。以下のいずれかのアカウントタイプを使用できます:
-
特権アカウント。
-
標準アカウント。
パスワード
指定したユーザー名のパスワード。
-
-
パラメータを構成したら、接続のテスト をクリックします。テストが成功したら、ページ右上の 保存 をクリックします。
テーブルの追加
-
ナビゲーションペインで、 を選択します。構成した AnalyticDB for MySQL 接続を選択し、テーブルタイプを選択して、後続の分析やダッシュボードで使用するために、意思決定システムにデータセットを追加します。
-
[Database table]:AnalyticDB for MySQL データベースから直接テーブルを追加します。
-
[SQL datasets]:SQL ステートメントを実行して、分析用のデータセットを生成します。
-
[Self-service datasets]:既存のデータベーステーブルまたは SQL データセットのデータを処理して、新しいデータセットを作成します。
-
-
ベーステーブルのフィールドを選択すると、フィルタリング、グループ化と集約、列の追加、マージなどの操作を実行できます。

例
マーケットバスケット分析は、ユーザーの消費データを分析することで、異なる製品間の関連性を見つける手法です。この例では、テーブルの作成、データのインポート、そして FineBI と AnalyticDB for MySQL を使用してマーケットバスケット分析
-
demo_sales サンプルデータをダウンロードします。
-
AnalyticDB for MySQL でテーブルを作成します。
-
均等に分散されたデータを持つ列を分散キーとして選択し、時間ベースの列をパーティションキーとして選択します。詳細については、「テーブルスキーマ設計」をご参照ください。
-
demo_salesデータに基づいて、document_id列の値はランダムに分散されており、分析のための JOIN 操作で使用されます。したがって、document_idを分散キーとして使用します。date列をパーティションキーとして使用します。これ以上データがインポートされないため、ライフサイクルを 100 に設定します。 -
次のステートメントを使用してテーブルを作成します:
CREATE TABLE `demo_sales` ( `date` DATE, `city` VARCHAR, `document_id` VARCHAR, `store_name` VARCHAR, `product_category` VARCHAR, `product_name` VARCHAR, `province` VARCHAR, `cost` DOUBLE, `gross_profit` DOUBLE, `quantity` BIGINT, `sales` DOUBLE ) DISTRIBUTED BY HASH(`document_id`) PARTITION BY VALUE(`date`) LIFECYCLE 100 INDEX_ALL='Y' STORAGE_POLICY='COLD' COMMENT='製品販売総括テーブル'
-
-
テーブルを作成したら、Kettle を使用して、ダウンロードした Excel ファイルを AnalyticDB for MySQL にインポートします。
-
Kettle の使用方法の詳細については、「Kettle を使用したデータのインポート」をご参照ください。
-
インポートが完了したら、
SELECT COUNT(*) FROM demo_sales;を実行します。結果には 40,514 行のデータが表示されます。
-
-
FineBI でセルフサービスデータセットを作成します。
-
ナビゲーションペインで、 を選択します。まず、ビジネスパッケージを追加し、
adbという名前を付けます。 -
ビジネスパッケージ内で、新しいセルフサービスデータセットを作成します。フィールドを選択する際、
AnalyticDB_connection_demo_salesを選択して、demo_salesテーブルから AnalyticDB for MySQL のすべてのフィールドを選択します。
-
-
FineBI のドキュメントに従って、データを追加し、ダッシュボードを作成します。詳細については、「マーケットバスケット分析」をご参照ください。
よくある質問
-
初期化時に外部データベースを選択しませんでした。今から構成するにはどうすればよいですか?
解決策:
-
データ意思決定システムで、 を選択します。レギュラー タブで、[Pending Configuration] をクリックします。
-
データベースの接続情報を入力して、外部データベースとして構成します。
-
構成が完了したら、[Enable New Database] をクリックします。
-
-
外部 MySQL データベースを構成しましたが、データのインポートに失敗します。
解決策:
-
データベースのバージョンとエンコーディングを確認してください。詳細については、「外部データベースの構成」をご参照ください。FineBI は MySQL 5.x をサポートしています。
-
外部 MySQL データベースが utf8 文字セット (
-- UTF-8 Unicode) を使用しているか確認するか、utf8 エンコーディングで新しいデータベースを作成してください:create database finedb character set utf8。
-
-
AnalyticDB for MySQL を外部データベースとして構成しましたが、接続に失敗しました。
解決策:FineBI のメタデータストレージには、AnalyticDB for MySQL クラスターではなく、標準の MySQL インスタンスが必要です。
-
「Data Preparation」タブに「Extract Data」と「Real-time Data」オプションがありません。
解決策:FineBI 公式ウェブサイトで入手可能なバージョンには、直接接続エンジンが含まれていません。直接接続エンジンを含むバージョンを入手するには、FineBI テクニカルサポートにお問い合わせください。詳細については、「解決策」をご参照ください。
-
データベースと FineBI の間でデータが同期されません。
解決策:詳細については、「データベースと BI の間でデータが同期されない」をご参照ください。
-
データを更新しても、結果が返されません。
解決策:単一行で結果が返されない場合、その行の計算値が null である可能性があります。関数を適用した後に列全体で結果が返されない場合、その関数が AnalyticDB for MySQL と互換性がない可能性があります。AnalyticDB for MySQL テクニカルサポートにお問い合わせください。
-
データのプレビューまたは保存に失敗しました。
解決策:
-
互換性のないデータ型を持つ列に関数が適用されているかどうかを確認してください。これにより、変換後に無効な値が生じる可能性があります。例えば、「City」のような文字列列に
ABS()などの絶対値関数を適用すると、文字列を有効な数値に変換できないためエラーが発生します。 -
エラーの詳細に次の図のような長い数字の文字列が含まれている場合、エラーは AnalyticDB for MySQL に起因している可能性が高いです。この数字 (プロセス ID) を AnalyticDB for MySQL テクニカルサポートに提供して、さらなる調査を依頼してください。

-
エラーの詳細にエラーコードのみが含まれている場合、エラーは FineBI に起因している可能性が高いです。トラブルシューティングについては、FineBI ドキュメント「BI 使用上の問題」をご参照ください。
-