Share via


ディメンションの設計

データベース ディメンションとは、ファクト データに関する情報を 1 つまたは複数のキューブで提供するための、属性と呼ばれる関連オブジェクトが集まったものです。たとえば、Product ディメンションの一般的な属性としては、製品名、製品カテゴリ、製品ライン、製品サイズ、製品価格などがあります。これらのオブジェクトは、データ ソース ビューのテーブル内の列にバインドされており、既定では、これらの属性は、属性階層として表示され、キューブ内のファクト データを理解する際に使用できます。属性はユーザー定義階層にまとめることができます。これらの階層には、ユーザーがキューブ内のデータを参照する際に使用できるナビゲーション パスが含まれています。

キューブには、ユーザーがファクト データの分析の基準として使用する、すべてのディメンションが含まれています。キューブ内のデータベース ディメンションのインスタンスは、キューブ ディメンションと呼ばれ、キューブ内の 1 つ以上のメジャー グループに関連しています。データベース ディメンションは、キューブで何度も使用できます。たとえば、ファクト テーブルに時間関連のファクトが複数含まれている場合は、時間関連の各ファクトを分析するために別々のキューブ ディメンションを定義できます。ただし、時間関連のデータベース ディメンションは 1 つしか必要ありません。つまり、時間に基づく複数のキューブ ディメンションをサポートするために、時間関連のリレーショナル データベースも 1 つしか必要となりません。

注意

ディメンション デザインに関連するパフォーマンスの問題ついては、「SQL Server 2005 Analysis Services パフォーマンス ガイド」を参照してください。

ディメンション、属性、および階層の定義

データベースとキューブのディメンション、属性、および階層を定義するための最も簡単な方法は、キューブ ウィザードを使用して、キューブの定義と同時にディメンションを作成することです。キューブ ウィザードでは、データ ソース ビューのディメンション テーブルに基づいてディメンションを作成します。このディメンション テーブルは、キューブで使用するために、ウィザードで指定されたり、ユーザーが指定したりします。その後、データベース ディメンションを作成して新しいキューブに追加すると、キューブ ディメンションが作成されます。

キューブを作成するときは、データベースに既に存在するディメンションを新しいキューブに追加することもできます。これらのディメンションは、別のキューブやディメンション ウィザードで以前に定義されている場合があります。データベース ディメンションは、定義した後に、ディメンション デザイナで変更および構成できます。またキューブ ディメンションは、キューブ デザイナで、限られた範囲内でカスタマイズできます。

注意

XMLA または分析管理オブジェクト (AMO) のいずれかを使用すると、ディメンション、属性、および階層をプログラムによってデザインおよび構成することもできます。詳細については、「Analysis Services スクリプト言語のリファレンス」および「分析管理オブジェクト (AMO)」を参照してください。

このセクションの内容

このセクションのトピックでは、次の内容について説明します。