Microsoft SQL Server Analysis Services では、属性はディメンションの基本的な構成要素です。 ディメンションには、属性リレーションシップに基づいて編成された属性のセットが含まれています。
ディメンションに含まれるテーブルごとに、テーブルのキー属性をそのテーブルの他の属性に関連付ける属性リレーションシップがあります。 このリレーションシップは、ディメンションを作成するときに作成します。
属性リレーションシップには、次の利点があります。
ディメンション処理に必要なメモリ量を減らします。 これにより、ディメンション、パーティション、およびクエリ処理が高速化されます。
ストレージ アクセスが高速になり、実行プランの最適化が向上するため、クエリのパフォーマンスが向上します。
リレーションシップ パスに沿ってユーザー定義階層が定義されている場合は、集計デザイン アルゴリズムによってより効果的な集計が選択されます。
注
属性リレーションシップの定義と構成の重要性と影響の詳細については、「 SQL Server 2005 Analysis Services パフォーマンス ガイド」の「クエリ パフォーマンスの向上」セクションを参照してください。
属性リレーションシップに関する考慮事項
基になるデータでサポートされている場合は、属性間の一意の属性リレーションシップも定義する必要があります。 一意の属性リレーションシップを定義するには、ディメンション デザイナーの [ 属性リレーションシップ ] タブを使用します。
外向きのリレーションシップを持つ属性には、関連する属性に対してユニークキーが必要です。 つまり、ソース属性のメンバーは、関連する属性のメンバーを 1 つだけ識別する必要があります。 たとえば、City -> State という関係について考えてみましょう。 このリレーションシップでは、ソース属性は City で、関連する属性は State です。 ソース属性は "多" 側であり、関連する側は多対一リレーションシップの "一" 側です。 ソース属性のキーは City + State です。 詳細については、「 属性リレーションシップの作成、変更、または削除」を参照してください。
属性リレーションシップのプロパティの詳細については、「属性リレーションシップの プロパティの構成」を参照してください。
注
属性リレーションシップを誤って定義すると、無効なクエリ結果が発生する可能性があります。