アプリケーション内への Business Intelligence の埋め込み
InterSystems IRIS® データ・プラットフォーム Business Intelligence は、ビジネス・インテリジェンス (BI) をアプリケーション内に埋め込むことを可能にすることで、ユーザがデータに関する高度な質問をし、回答できるようにします。ここでは、追加可能な機能、全体的なプロセス、および使用するツールの概要を示します。
Business Intelligence のシステム要件に関する詳細は、"インターシステムズのサポート対象プラットフォーム" を参照してください。
Business Intelligence の機能
アプリケーションには、グラフィカルなウィジェットが含まれるダッシュボードを含めることができます。ウィジェットはデータを表示し、ピボット・テーブルおよび KPI (重要業績評価指標) に従って動作します。ピボット・テーブルでは、ソース値を表示するリストを表示できます。
ピボット・テーブル、KPI およびリストはクエリで、実行時に実行されます。
-
ピボット・テーブルは、ユーザが行うフィルタ選択など、実行時の入力に応答できます。内部的には、キューブと通信を行う MDX (多次元式) クエリが使用されます。
キューブは、ファクト・テーブルとインデックスで構成されます。ファクト・テーブルは、一連のファクト (行) で構成され、各ファクトは、ベース・レコードに対応します。例えば、ファクトを患者や診療科に対応させることができます。また、システムにより一連のレベル・テーブルも生成されます。すべてのテーブルが動的に維持されます。
構成および実装に応じて、システムはトランザクション・テーブルの変更を検出し、必要に応じてファクト・テーブルに反映させます。
ユーザがアナライザでピボット・テーブルを作成すると、システムは、MDX クエリを自動生成します。
-
KPI も実行時のユーザ入力に反応させることができます。内部的には、MDX クエリ (キューブの場合)、または SQL クエリ (任意のテーブルの場合) を使用します。
いずれの場合も、クエリは手動で作成することも、別の場所からコピーすることもできます。
-
リストには、ユーザが選択したピボット・テーブルの行に使用されたソース・レコードから選択された値が表示されます。内部的には、リストは SQL クエリです。
使用するフィールドを指定して、システムに実際のクエリを生成させることができます。また、クエリ全体を指定することもできます。
ダッシュボードには、アクションを起動するボタンやその他のコントロールを含めることができます。アクションによって、フィルタの適用または設定、ダッシュボードの更新、他のダッシュボードや URL のオープン、カスタム・コードの実行などが可能です。システムには一連の標準アクションが用意されていますが、ユーザはカスタム・アクションを定義できます。
アプリケーションに追加される Business Intelligence コンポーネント
アプリケーションに Business Intelligence を追加するには、以下のコンポーネントの一部またはすべてを追加します。
-
データ・コネクタ・クラス。データ・コネクタを使用すると、任意の SQL クエリをキューブまたはリストのソースとして使用できます。
-
キューブ定義クラス。キューブでは、Business Intelligence のピボット・テーブル内で使用される要素を定義し、対応するファクト・テーブルおよびインデックスの構造やコンテンツを制御します。
キューブ定義は、その基礎として使用するトランザクション・クラス (または、データ・コネクタ) をポイントします。
使用できるキューブの数に制限はありません。また、指定のクラスを複数のキューブの基礎として使用できます。
システムは、キューブごとにファクト・テーブル・クラスおよびその他のクラスを生成し、データを入力します。
-
サブジェクト領域クラス。
サブジェクト領域は、主にフィルタ処理されたキューブです (サブジェクト領域には、必要に応じて、フィルタおよびキューブ定義のさまざまな部分に対するオーバーライドが含まれます)。Business Intelligence では、キューブとサブジェクト領域を互換的に使用できます。
-
KPI 定義クラス。
KPI は、カスタム・クエリ (特に、ユーザ入力に基づいて実行時に決定されるクエリ) が必要な場合に定義します。
また、カスタム・アクションが必要な場合にも KPI を定義します。これは、アクションが KPI クラスに含まれるためです。
-
ピボット・テーブル。これらはドラッグ・アンド・ドロップ操作により作成します。システムは、基礎となる MDX クエリを生成します。
-
ダッシュボード。基礎となるクエリを実行して結果を表示することで、ピボット・テーブルや KPI を表示します。
-
ユーザ・ポータル。ピボット・テーブルやダッシュボードを表示します。
推奨アーキテクチャ
"高可用性ガイド" で述べているとおり、一般的に高可用性手法の一環としてミラーリングの使用をお勧めします。大規模なアプリケーションの場合、フェイルオーバー・ペア、非同期レポート・メンバ、および 1 つ以上の非同期災害復旧メンバを含むミラーが推奨されます。
分析アプリケーションは、実行時にインスタンスで使用可能なすべての処理能力を使用できます。レポート非同期メンバを介して分析機能を提供することで、ミラーのフェイルオーバー・メンバは高いトランザクション・ボリュームを適切に維持できます。
具体的には以下のとおりです。
-
コードとデータが別々のデータベースに存在するようにアプリケーションを定義します。これは必須ではありませんが、一般的なアーキテクチャです。
-
アプリケーション・データが非同期レポート・メンバにミラーリングされるようにミラーリングを設定します。
-
システムがアプリケーション・データにアクセスできるように、一部またはすべてのアプリケーション・クラスとその他のコードもレポート非同期メンバにコピーします。
一般に、アプリケーション・コードをミラーリングする必要はありません。
-
レポート非同期メンバに、キューブの定義と (必要に応じて) データを格納するデータベースを作成します。
必要に応じて、Business Intelligence ファクト・テーブルやその他の大容量 Business Intelligence データを格納する別のデータベースを作成します。システムで使用するグローバルについては、"初期設定の実行" で説明します。
-
非同期レポート・メンバに、Business Intelligence を実行するネームスペースを定義します。このネームスペースで、このサーバ上のアプリケーション・データ、アプリケーション・コード、キューブ定義、および Business Intelligence データにアクセスするためのマッピングを定義します。
小規模なアプリケーションやデモについては、すべてのコードおよびデータを同じデータベースに格納してもかまいません。
Business Intelligence の災害復旧に関する推奨事項は、"Business Intelligence と災害復旧" を参照してください。
また、Business Intelligence のシステム要件に関する情報については、"インターシステムズのサポート対象プラットフォーム" を参照してください。
主な実装手順
実装プロセスには、以下の手順が含まれます。
-
Business Intelligence を使用するネームスペースで Web アプリケーションがまだ定義されていない場合は、そのネームスペースに対して Web アプリケーションを定義します。"初期設定の実行" を参照してください。
-
必要に応じて、パフォーマンス向上のために、他のデータベースから Business Intelligence グローバルをマップします。"初期設定の実行" を参照してください。
-
キューブおよびオプションのサブジェクト領域を作成します。このプロセスには以下の手順が含まれます。これらの手順は必要に応じて繰り返してください。
-
1 つ以上のキューブを定義します。この手順では、アーキテクト、スタジオ、またはその両方を使用します。
-
キューブを構築します。ここでは、アーキテクトまたはターミナルを使用します。
-
アナライザを使用してキューブを表示し、検証します。
キューブを定義したら、それらのキューブに基づいて任意のサブジェクト領域を定義します。
キューブとサブジェクト領域の作成の詳細は、"InterSystems Business Intelligence のモデルの定義" を参照してください。
アナライザの使用方法の詳細は、"アナライザの使用法" を参照してください。
-
-
必要に応じて、KPI を作成します。"InterSystems Business Intelligence の上級モデリング" を参照してください。
-
必要に応じて、カスタム・アクションを作成します。"カスタム・アクションの定義" を参照してください。
-
キューブを最新の状態に維持するために必要な変更を加えます。その方法は、データがどの程度新しい必要があるのかと、パフォーマンスに関する考慮事項によって異なります。
"キューブの最新状態の維持" を参照してください。
-
ピボット・テーブルとダッシュボードを作成します。"アナライザの使用法" および "ダッシュボードの作成" を参照してください。
-
配置を容易にするために、ピボット・テーブルとダッシュボードを InterSystems IRIS クラスにパッケージ化します。
"クラスへの Business Intelligence 要素のパッケージ化" を参照してください。
-
アプリケーションからダッシュボードへのリンクを作成します。"アプリケーションからダッシュボードへのアクセス" を参照してください。
このプロセスにおいて適切な時点で、以下の操作が必要となる場合もあります。
-
データ・コネクタの作成 — "データ・コネクタの定義" を参照してください。
-
設定の構成 — "設定の構成" を参照してください。
-
ローカライズの実行 — "ローカライズの実行" を参照してください。
-
ダッシュボードで使用するカスタム・ポートレットの定義 — "ダッシュボードで使用するポートレットの作成" を参照してください。
-
その他の開発タスクの実行 — "その他の開発作業" を参照してください。
-
セキュリティの設定 — "Business Intelligence のセキュリティの設定" を参照してください。
実装ツール
実装プロセスでは、以下のツールを使用します。
-
管理ポータルの Business Intelligence セクションから使用できるツール :
-
アーキテクト — これを使用して、キューブおよびサブジェクト領域を定義します。また、キューブのコンパイルや構築 (およびサブジェクト領域のコンパイル) もできます。
-
アナライザ — これを使用して、モデルの検証時にキューブおよびサブジェクト領域を調べます。後で、ピボット・テーブルの作成に使用します。
-
ユーザ・ポータル — これを使用して、ダッシュボードを定義します。
-
MDX クエリツール — これを使用して、MDX クエリを作成し、それらのクエリ・プランを表示します。
-
フォルダマネージャ — これを使用して、主に、ピボット・テーブルとダッシュボードをエクスポートし、それらの定義をInterSystems IRIS クラスにパッケージ化できるようにします。
また、このツールを使用して、リソースをフォルダに関連付けることもできます。
-
[設定] オプション — これを使用して、ユーザ・ポータルの外観や動作を指定したり、ダッシュボードで使用可能な変数を定義します。
-
Business Intelligence ログ — これを使用して、そのネームスペースの Business Intelligence 構築ログを表示します。
-
-
ターミナル — これを使用して、キューブを再構築したり、メソッドをテストします。
-
MDX シェル (ターミナル内で動作) — これを使用して、キューブやサブジェクト領域を調べたり、カスタム MDX クエリを作成してその結果を表示します。
-
管理ポータルのその他のセクション — これらを使用し、必要に応じて、グローバルのマップ、Business Intelligence で使用するリソース、ロール、およびユーザの定義、および Business Intelligence ファクト・テーブルの検証を行います。
-
ユーティリティ・メソッド :
-
%DeepSee.UtilsOpens in a new tab には、キューブの構築、キューブの同期化、セル・キャッシュのクリア、およびその他のタスクに使用できるメソッドが含まれています。
-
%DeepSee.UserLibrary.UtilsOpens in a new tab には、フォルダマネージャでサポートされるタスクをプログラムで実行する場合に使用できるメソッドが含まれています。
-
-
データ・コネクタ・クラス (%DeepSee.DataConnectorOpens in a new tab) — これを使用して、キューブおよびリストで任意の SQL クエリを使用できるようにします。
-
結果セット API (%DeepSee.ResultSetOpens in a new tab) — これを使用して、MDX クエリをプログラムによって実行し、その結果にアクセスします。
サンプルのアクセス方法
このドキュメントのほとんどの例は、Samples-BI サンプル (https://github.com/intersystems/Samples-BIOpens in a new tab) または Samples-Aviation サンプル (https://github.com/intersystems/Samples-AviationOpens in a new tab) の一部です。
サンプルは、専用のネームスペース (SAMPLES など) を作成して、そのネームスペースにロードすることをお勧めします。一般的な手順は、"InterSystems IRIS で使用するサンプルのダウンロード" を参照してください。
これらのサンプルには、キューブ定義、サブジェクト領域、KPI、データ・コネクタ、およびプラグインが含まれています。また、ピボット・テーブルおよびダッシュボードのサンプルも含まれています。