背景
この章では、DeepSee の概要を示すと共に、多くのベンダによって実装されているクエリ言語である MDX (多次元式) を DeepSee がどのようにサポートしているかについて説明します。
DeepSee のシステム要件に関する情報については、このリリース向けのオンライン・ドキュメント "インターシステムズでサポートされるプラットフォームOpens in a new tab" を参照してください。
DeepSee の目的
InterSystems DeepSee の目的は、アプリケーションへのビジネス・インテリジェンス (BI) の埋め込みを可能にすることにより、ユーザがデータに関して高度な質問と回答を行えるようにすることです。アプリケーションにはダッシュボードが含まれます。ダッシュボードにはピボット・テーブルを含めることができます。
ピボット・テーブルは、対話型で、ドリル可能なデータの表示で、特定のユーザ・ロール、またはユーザ・インタフェースの特定領域向けに設計されています。
各ピボット・テーブルには、実行時に実行される、基礎となる MDX クエリが含まれます。DeepSee は、トランザクション・テーブルに対して直接クエリを実行する代わりに、トランザクション・テーブルと同期化されているキューブに対してクエリを実行します (キューブの定義の詳細は、"DeepSee モデルの定義" を参照してください)。
ピボット・テーブルの概要
ピボット・テーブルは、DeepSee の中心で、データを選択および集約し、対話型形式で表示します。
ピボット・テーブルの例を以下の図に示します。この図は、年齢および男女別に患者数と患者 1 人あたりが抱えるアレルギー数の平均値を表しています。
概念は相互に関係しているため、他の概念を参照せずに個々の概念を検討することは難しいので、まず、予備的な定義から始めましょう。
-
レベルは、レコードのグループ化を可能にします。レベルにはメンバがあります。同様に、個々のメンバは、ソース・データ内の特定のレコード・グループに対応します。
例えば、Age Group レベルには、メンバ 0 to 29、30 to 59、および 60+ があります。Age Bucket レベルには、メンバ 0-9、10-19、20-29 などがあります。Gender レベルには、メンバ Female および Male があります。
-
メジャーはピボット・テーブルの本文に表示される値であり、選択されたレコードのソース・データの値に基づいています。指定されたコンテキストに対して、メジャーは該当するすべてのソース・レコード値を集約し、これらを 1 つの値として表します。
例えば、メジャー Patient Count は患者数、メジャー Avg Allergy Count は患者 1 人あたりのアレルギー数の平均値です。
MDX の概要
MDX は、OLAP (オンライン分析処理) データベースの標準クエリ言語です。MDX 言語は、キューブ要素を参照する構文を提供します。この言語のほとんどの文や関数によって、キューブに対してクエリを実行することができます。返されるデータは結果セットで、ピボット・テーブルとして表示できます。
MDX には、キューブ定義を拡張する機能も用意されています。 特に、既存の要素に基づいて新しい要素を定義し、それらの新しい要素を MDX クエリで使用できます。
DeepSee では、MDX が以下のようにサポートされます。
-
アナライザでピボット・テーブルを作成する際には、DeepSee によって MDX クエリが生成されて使用されます。MDX クエリは直接表示できます。
-
アナライザには、MDX クエリを直接実行するためのオプションが用意されています。
-
MDX クエリを MDX シェルで実行し、クエリ結果を表示することができます。
-
DeepSee には、MDX クエリを実行するために使用できる API が用意されています。
-
以下のサブセクションで説明するように、DeepSee モデル内で、MDX 式およびクエリを使用して特定の要素を定義します。
一部の MDX クエリは複雑すぎて、現在のユーザ・インタフェース内では作成できません。そのようなクエリは、シェルで実行するか API を使用して実行できますが、アナライザでのドラッグ・アンド・ドロップ操作で作成することはできません。
詳細は、以下のソースを参照してください。
-
アナライザの詳細は、"DeepSee アナライザの使用法" を参照してください。
-
MDX シェルの詳細は、"はじめに" を参照してください。
-
MDX API の詳細は、"DeepSee 実装ガイド" を参照してください。
DeepSee は、MDX の実装を提供します。結果は、他の実装とは異なる場合があります。
DeepSee モデルにおける MDX
DeepSee モデルでは、MDX 式およびクエリを使用できる場所は以下のとおりです。
-
キューブ定義内で以下のように使用します。
-
MDX メンバ式を使用して、計算メンバを定義します。
-
MDX セット式を使用して、名前付きセットを定義します。
-
MDX セット式を使用して、キューブをフィルタ処理します。
これらはすべてオプションです。
-
-
サブジェクト領域の定義内で、MDX セット式を使用して、サブジェクト領域をフィルタ処理します。これはオプションです。サブジェクト領域にフィルタを含める必要はありません。
-
KPI (重要業績評価指標) 定義内で、MDX クエリを使用して KPI を定義できます。これはオプションです。代わりに SQL クエリを使用することもできます。
詳細は、"DeepSee モデルの定義" および "DeepSee 実装ガイド" を参照してください。