属性リレーションシップの定義
Microsoft SQL Server Analysis Services では、属性はディメンションの基本的なビルド ブロックです。ディメンションには、属性リレーションシップに基づいて構成される一連の属性が含まれます。
ディメンションに含まれるテーブルごとに、テーブルのキー属性をそのテーブルの別の属性に関連付ける属性リレーションシップがあります。このリレーションシップは、ディメンションの作成時に作成します。
属性リレーションシップには、次の利点があります。
ディメンション処理に必要なメモリの量が減少します。これにより、ディメンション、パーティション、およびクエリの処理速度が上がります。
ストレージへのアクセスが高速になり、実行プランがより適切に最適化されるため、クエリ パフォーマンスが向上します。
ユーザー定義階層がリレーションシップのパスに沿って定義されている場合、集計デザイン アルゴリズムによってより効果的な集計が選択されます。
注 属性リレーションシップの定義と構成の重要性および影響の詳細については、「SQL Server 2005 Analysis Services パフォーマンス ガイド」の「クエリ パフォーマンスの向上」を参照してください。
属性リレーションシップに関する注意点
基になるデータで属性リレーションシップがサポートされる場合、属性間で一意の属性リレーションシップを定義することも必要です。一意の属性リレーションシップを定義するには、ディメンション デザイナの [属性リレーションシップ] タブを使用します。
基になるリレーションシップがある属性には、その関連属性を基準とした一意なキーが必要です。つまり、基になる属性のメンバによって、関連属性のメンバが 1 つだけ識別される必要があります。たとえば、市区町村 -> 都道府県のリレーションシップを考えてみます。このリレーションシップでは、基になる属性が市区町村、関連属性が都道府県です。多対一のリレーションシップの "多" に当たるのが基になる属性で、"一" に当たるのが関連属性です。基になる属性のキーは、市区町村 + 都道府県です。詳細については、「属性リレーションシップを作成、変更、または削除する方法」を参照してください。
属性リレーションシップのプロパティの詳細については、「属性リレーションシップのプロパティの構成」を参照してください。
注 |
---|
属性リレーションシップを正しく定義しないと、クエリ結果が無効になる場合があります。 |