AMO OLAP クラス

更新 : 2006 年 4 月 14 日

分析管理オブジェクト (AMO) OLAP クラスは、キューブやディメンションに加えて、主要業績評価指標 (KPI)、アクション、プロアクティブ キャッシュなどの関連オブジェクトを作成、変更、削除、および処理する際に役立ちます。

AMO プログラミング環境の設定、サーバーとの接続の確立方法、データベースへのアクセス、およびデータ ソースとデータ ソース ビューの定義の詳細については、「AMO の基礎クラス」を参照してください。

このトピックの内容は次のとおりです。

  • Dimension オブジェクト
  • Cube オブジェクト
  • MeasureGroup オブジェクト
  • Partition オブジェクト
  • AggregationDesign オブジェクト
  • Aggregation オブジェクト
  • Action オブジェクト
  • KPI オブジェクト
  • Perspective オブジェクト
  • Translation オブジェクト
  • ProactiveCaching オブジェクト

次の図は、このトピックで説明するクラスの関係を示しています。

AMO の OLAP クラス

基本クラス

基本クラスは、キューブの構築に必要な最小限のオブジェクト セットです。この最小限のオブジェクト セットは、ディメンション、メジャー グループ、およびパーティションです。集計は省略可能です。

ディメンションは、属性および階層から構築されます。階層は、順序付けされた属性のセットで形成されます。セット内の各属性が、階層内の 1 つのレベルに対応します。

キューブは、ディメンションおよびメジャー グループから構築されます。キューブのディメンション コレクション内のディメンションは、データベースのディメンション コレクションに属しています。メジャー グループは、同じデータ ソース ビューおよびキューブのディメンションの同じサブセットを持つ、メジャーのコレクションです。1 つのメジャー グループには、物理データを管理するパーティションが 1 つ以上あります。メジャー グループには、既定の集計デザインを指定できます。既定の集計デザインを、メジャー グループ内のすべてのパーティションに使用できます。また、各パーティションに独自の集計デザインを使用することもできます。

Dimension オブジェクト

簡単な Dimension オブジェクトは、基本情報、属性、および階層で構成されます。基本情報には、ディメンションの名前、ディメンションの種類、データ ソース、ストレージ モードなどが含まれます。属性は、ディメンション内の実際のデータを定義します。属性は必ずしも階層に属するわけではありませんが、階層は属性から構築されます。階層は、順序付けされたレベルの一覧を作成し、ユーザーに可能なディメンションの探索方法を定義します。

ディメンションの作成は、親データベースのディメンション コレクションにこれを追加し、Update メソッドを使用してサーバーに対して Dimension オブジェクトを更新することにより行われます。

ディメンションを削除するには、Dimension の Drop メソッドを使用してこれを削除する必要があります。Remove メソッドを使用して、データベースのディメンション コレクションから Dimension を削除した場合、AMO オブジェクト モデル内では削除されますが、サーバー上では削除されません。

Dimension オブジェクトは、作成後に処理できます。Dimension は、独自の処理メソッドを使用して処理するか、親オブジェクトの処理時に親オブジェクトの処理メソッドを使用して処理することができます。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.Dimension」を参照してください。

Cube オブジェクト

簡単な Cube オブジェクトは、基本情報、ディメンション、およびメジャー グループで構成されます。基本情報には、キューブの名前、キューブの既定のメジャー、データ ソース、ストレージ モードなどが含まれます。

ディメンションは、キューブで実際に使用されるディメンションのセットです。すべてのディメンションは、キューブ内で参照される前に、データベースのディメンション コレクション内で定義されている必要があります。プライベート ディメンションは、Microsoft SQL Server 2000 Analysis Services で使用できますが、Microsoft SQL Server 2005 Analysis Services では使用できません。

メジャー グループは、キューブ内のメジャーのセットです。メジャー グループは、共通のデータ ソース ビューと共通のディメンション セットを持つ、メジャーのコレクションです。メジャー グループは、メジャーの処理単位です。メジャー グループは個別に処理されてから参照できます。

キューブを作成するには、データベースのキューブ コレクションに新しいキューブを追加した後、Update メソッドを使用して、サーバー上の Cube オブジェクトを更新します。キューブの Update メソッドには、パラメータ UpdateOptions.ExpandFull を含めることができます。このパラメータでは、この更新アクションによって、キューブ内で変更されたすべてのオブジェクトがサーバーに対して更新されます。

キューブを削除するには、Cube の Drop メソッドを使用してこれを削除する必要があります。コレクションからキューブを削除しても、サーバーには影響を与えません。

Cube オブジェクトは、作成後に処理できます。Cube は、独自の処理メソッドを使用して処理するか、親オブジェクトがそれ自体を独自の Process メソッドを使用して処理する際に処理することができます。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.Cube」を参照してください。

MeasureGroup オブジェクト

簡単な MeasureGroup オブジェクトは、基本情報、メジャー、ディメンション、およびパーティションで構成されます。基本情報には、メジャー グループの名前、メジャーの種類、ストレージ モード、処理モードなどが含まれます。メジャーは、メジャー グループを実際に構成するメジャーのセットです。各メジャーには、集計関数の定義、書式設定属性、データ アイテム ソースなどがあります。ディメンションは、処理済みのメジャー グループの作成に使用される、キューブ ディメンションのサブセットです。パーティションは、処理済みのメジャー グループの物理的分割のコレクションです。

メジャー グループを作成するには、キューブのメジャー グループ コレクションに新しいメジャー グループを追加した後、独自の Update メソッドを使用して、サーバー上の MeasureGroup オブジェクトを更新します。MeasureGroup オブジェクトを削除するには、独自の Drop メソッドを使用します。

MeasureGroup オブジェクトは、作成後に処理できます。MeasureGroup は、独自の Process メソッドを使用して処理するか、親オブジェクトがそれ自体を独自の Process メソッドで処理する際に処理することができます。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.MeasureGroup」を参照してください。

Partition オブジェクト

パーティションは、メジャー グループ データの一部を入れるコンテナです。パーティションは、MDX クエリからは見えません。メジャー グループに定義されたパーティションの数にかかわらず、すべてのクエリでメジャー グループの内容全体が反映されます。パーティションのデータの内容は、パーティションのクエリ バインドと、スライス式によって定義されます。

簡単な Partition オブジェクトは、基本情報、スライス定義、集計デザインなどで構成されます。基本情報には、パーティションの名前、ストレージ モード、処理モードなどが含まれます。スライス定義は、組またはセットを指定する MDX 式です。スライス定義には、StrToSet MDX 関数と同様の制限があります。CONSTRAINED パラメータを指定したスライス定義では、ディメンション、階層、レベルとメンバの名前、キー、一意の名前やキューブ内のその他の名前付きオブジェクトを使用できますが、MDX 関数は使用できません。集計デザインは、複数のパーティションで共有できる集計定義のコレクションです。親キューブの集計デザインが既定値となります。

Partition オブジェクトの作成は、親メジャー グループのパーティション コレクションにこれを追加し、Update メソッドを使用してサーバーに対して Partition オブジェクトを更新することにより行われます。Partition オブジェクトを削除するには、Drop メソッドを使用します。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.Partition」を参照してください。

AggregationDesign オブジェクト

AggregationDesign オブジェクトは、複数のパーティションで共有できる集計定義のセットを定義します。

集計デザインは、AggregationDesign オブジェクトの AggregationDesign メソッドを使用して構築します。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.AggregationDesign」を参照してください。

Aggregation オブジェクト

Aggregation オブジェクトは、メジャー グループ データの概要を、ディメンションの特定の粒度で表します。

簡単な Aggregation オブジェクトは、基本情報およびディメンションで構成されます。基本情報には、集計の名前、ID、注釈、および説明が含まれます。ディメンションは、ディメンションの粒度属性の一覧を含む AggregationDimension オブジェクトのコレクションです。

Aggregation オブジェクトを作成するには、親メジャー グループの集計デザイン コレクションに新しいオブジェクトを追加した後、Update メソッドを使用して、サーバー上の親メジャー グループ オブジェクトを更新します。集計を AggregationCollection から削除するには、Remove メソッドまたは RemoveAt メソッドを使用します。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.Aggregation」を参照してください。

高度なクラス

高度なクラスは、キューブの構築や参照以外の OLAP 機能を提供します。高度なクラスの一部とそれらの利点を以下に示します。

  • アクション クラス : キューブの特定領域を参照する際、アクティブな応答を作成するときに使用します。
  • 主要業績評価指標 (KPI) : データの値を比較分析できます。
  • 分析観点 : 各ユーザーの必要性に応じて、1 つのキューブの特定のビューを参照できます。
  • 翻訳 : ユーザー ロケールに合わせてキューブをカスタマイズできます。
  • プロアクティブ キャッシュ クラスは、MOLAP ストレージの拡張されたパフォーマンスと、ROLAP ストレージの即時性とのバランスをとり、定期的なパーティション処理を可能にします。

この拡張された動作の定義設定には AMO を使用しますが、実際の操作性は、これらすべての機能強化を実装したブラウザ クライアントによって定義されます。

Action オブジェクト

アクションにはさまざまな種類があり、適切に作成する必要があります。アクションの種類は次のとおりです。

  • ドリルスルー アクション。このアクションが発生したキューブで選択されているセル内のデータを表す行セットを返します。
  • レポート アクション。このアクションは、実行されたキューブで選択されているセクションに関連付けられた Reporting Services からレポートを返します。
  • 標準アクション。このアクションは、実行されたキューブで選択されているセクションに関連付けられたアクション要素 (URL、HTML、DataSet、RowSet などの要素) を返します。

アクションを定義するには AMO を使用します。アクションを取得してエンド ユーザーに公開する際、クライアント アプリケーションでは ADOMD.NET などのクエリ インターフェイスが使用されます。詳細については、「ADOMD.NET」を参照してください。

簡単な Action オブジェクトは、基本情報、アクションが実行される対象、アクション スコープの限定条件、およびアクションの種類で構成されます。基本情報には、アクションの名前、アクションの説明、アクションに推奨されるキャプションなどが含まれます。

対象は、アクションが実行されるキューブ内の実際の場所です。対象は、対象の種類および対象オブジェクトで構成されます。対象の種類は、アクションが有効化されるキューブ内のオブジェクトの種類を表します。対象の種類には、レベル メンバ、セル、階層、階層メンバなどがあります。対象オブジェクトは、その対象の種類に属する特定のオブジェクトです。対象の種類が階層の場合、対象オブジェクトは、キューブ内で定義された階層のうちの 1 つです。

条件は、アクション イベント時に評価される、Boolean 型の MDX 式です。条件が true と評価された場合に、アクションが実行されます。それ以外の場合、アクションは実行されません。

種類は、実行されるアクションの種類です。Action は抽象クラスであるため、これを使用するにはその派生クラスのいずれかを使用する必要があります。2 種類のアクションが事前定義されています。ドリルスルーおよびレポートです。これらに対応する派生クラスとして、DrillThroughAction および ReportAction があります。その他のアクションは、StandardAction クラスに含まれます。

Action オブジェクトを作成するには、キューブのアクション コレクションに新しいオブジェクトを追加した後、Update メソッドを使用して、サーバー上で Cube オブジェクトを更新します。キューブの更新メソッドには、パラメータ UpdateOptions.ExpandFull を含めることができます。このパラメータでは、この更新アクションによって、キューブ内で変更されたすべてのオブジェクトがサーバーに対して更新されます。

Action オブジェクトを削除するには、コレクションからこれを削除し、親キューブを更新する必要があります。

キューブを更新して処理するまで、アクションはクライアントから使用できません。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.Action」を参照してください。

Kpi オブジェクト

ビジネス用語としての主要業績評価指標 (KPI) は、ビジネスの成功を定量化して計測した指標です。

Analysis Services における KPI は、キューブ内のメジャー グループに関連付けられた、ビジネスの成功の評価に使用される計算のコレクションです。これらの計算は通常、多次元式 (MDX) または計算されるメンバの組み合わせです。KPI には、KPI の計算結果をクライアント アプリケーションでどのように表示するかについての情報を提供する追加のメタデータもあります。

KPI で扱う情報は、設定された目標、キューブに記録された実際の業績の公式、および業績の傾向と状態を示す測定値です。公式の定義と、KPI の値に関するその他の定義には、AMO を使用します。クライアント アプリケーションによる KPI 値の取得およびエンド ユーザーへの公開には、ADOMD.NET などのクエリ インターフェイスが使用されます。詳細については、「ADOMD.NET」を参照してください。

簡単な Kpi オブジェクトは、基本情報、目標、実際の達成値、状態値、傾向値、および KPI が表示されるフォルダで構成されます。基本情報には、KPI の名前および説明が含まれます。目標は、数値に評価される MDX 式です。実際の値は、数値に評価される MDX 式です。状態と傾向の値は、数値に評価される MDX 式です。フォルダは、クライアントに表示される KPI の推奨される場所です。

Kpi オブジェクトを作成するには、キューブの KPI コレクションに新しいオブジェクトを追加した後、Update メソッドを使用して、サーバー上で Cube オブジェクトを更新します。キューブの Update メソッドには、パラメータ UpdateOptions.ExpandFull を含めることができます。このパラメータでは、この更新アクションによって、キューブ内で変更されたすべてのオブジェクトがサーバーに対して更新されます。

Kpi オブジェクトを削除するには、コレクションからこれを削除し、親キューブを更新する必要があります。

キューブを更新して処理するまで、KPI は使用できません。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.Kpi」を参照してください。

Perspective オブジェクト

分析観点は、ユーザーがキューブをより単純な方法で表示するための定義です。分析観点は、キューブの機能のサブセットです。分析観点を使用すると、管理者がキューブのビューを作成できるので、ユーザーは各自にとって重要なデータに集中できます。分析観点には、キューブのすべてのオブジェクトのサブセットが含まれます。分析観点には、親キューブに定義されていない要素を含めることはできません。

簡単な Perspective オブジェクトは、基本情報、ディメンション、メジャー グループ、計算、KPI、およびアクションで構成されます。基本情報には、分析観点の名前および既定のメジャーが含まれます。ディメンションは、キューブ ディメンションのサブセットです。メジャー グループは、キューブのメジャー グループのサブセットです。計算は、キューブの計算のサブセットです。KPI は、キューブの KPI のサブセットです。アクションは、キューブのアクションのサブセットです。

Perspective オブジェクトを作成するには、キューブの分析観点コレクションに新しいオブジェクトを追加した後、Update メソッドを使用して、サーバー上で Cube オブジェクトを更新します。キューブの Update メソッドには、パラメータ UpdateOptions.ExpandFull を含めることができます。このパラメータでは、この更新アクションによって、キューブ内で変更されたすべてのオブジェクトがサーバーに対して更新されます。

Perspective オブジェクトを削除するには、コレクションからこれを削除し、親キューブを更新する必要があります。

キューブを更新して処理するまで、分析観点は使用できません。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.Perspective」を参照してください。

Translation オブジェクト

翻訳は、ラベルとキャプションの表示言語を変更する単純なメカニズムです。各翻訳は、値のペアとして定義されます。翻訳済みテキストの文字列と言語 ID の数値とのペアです。翻訳は、Analysis Services のすべてのオブジェクトで使用できます。ディメンションは翻訳された属性値も持つことができます。クライアント アプリケーションは、ユーザーによって定義された言語設定を検索し、すべてのキャプションとラベルの表示をその言語に切り替えます。1 つのオブジェクトに対する翻訳の数に制限はありません。

簡単な Translation オブジェクトは、言語 ID 番号およびキャプションの翻訳で構成されます。言語 ID 番号は、言語 ID を含む Integer です。キャプションの翻訳は、翻訳されたテキストです。

Translation オブジェクトを作成するには、対象オブジェクトの翻訳コレクションに新しいオブジェクトを追加した後、Update メソッドを使用して、最も近い主要な親オブジェクトをサーバー上で更新します。最も近い親オブジェクトの Update メソッドには、パラメータ UpdateOptions.ExpandFull を含めることができます。このパラメータでは、この更新アクションによって、変更されたすべての子オブジェクトがサーバーに対して更新されます。

Translation オブジェクトを削除するには、コレクションからこれを削除し、最も近い親オブジェクトを更新する必要があります。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.Translation」を参照してください。

ProactiveCaching オブジェクト

プロアクティブ キャッシュでは、自動 MOLAP キャッシュの作成と、OLAP オブジェクトの管理が可能です。データベース内のデータに加えられた変更は、データベースからの通知に基づき、すぐにキューブに反映されます。プロアクティブ キャッシュの目標は、従来の MOLAP のパフォーマンスを提供しながら、ROLAP の即時性と管理のしやすさを保つことです。

簡単な ProactiveCaching オブジェクトは、タイミングの指定およびテーブル通知で構成されます。タイミングの指定は、変更通知を受信してからキャッシュが更新されるまでのタイムフレームを定義します。テーブル通知は、データ テーブルと ProactiveCaching オブジェクトとの間の通知スキーマを定義します。

ProactiveCaching オブジェクトを作成するには、ディメンションまたはパーティションのプロアクティブ キャッシュ オブジェクト コレクションに新しいオブジェクトを追加した後、Update メソッドを使用して、ディメンション オブジェクトまたはパーティション オブジェクトをサーバー上で更新します。

ProactiveCaching オブジェクトを削除するには、コレクションからこれを削除し、親オブジェクトを更新する必要があります。

ディメンションまたはパーティションを更新して処理するまで、プロアクティブ キャッシュは有効化も使用もできません。

利用可能なメソッドおよびプロパティの詳細については、Microsoft.AnalysisServices 名前空間の「Microsoft.AnalysisServices.ProactiveCaching」を参照してください。

参照

関連項目

Microsoft.AnalysisServices

概念

AMO クラスの概要
AMO OLAP 基本オブジェクトのプログラミング
高度な AMO OLAP オブジェクトのプログラミング

その他の技術情報

Analysis Services の概念とオブジェクト
Analysis Services オブジェクト

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 4 月 14 日

新しい内容 :
  • このトピックで説明するオブジェクトの関係を示す図を追加しました。