次の方法で共有


多次元モデルでメジャーとメジャー グループを作成する

メジャーは、作成した合計、カウント、最小値、最大値、平均、カスタム MDX 式などの数値データ値の集計です。 計測値グループは、1つ以上の計測値をまとめるコンテナです。 メジャーが 1 つしかない場合でも、すべてのメジャーがメジャー グループに存在します。 キューブには、少なくとも 1 つの測定値と測定値グループが必要です。

このトピックのセクションは次のとおりです。

対策を作成するためのアプローチ

メジャーは、デザイン時に作成されるキューブの静的要素であり、キューブにアクセスするたびに常に存在します。 ただし、MDX を使用して、キューブ内の他のメジャーに基づいてメジャーの計算値を提供することで、メジャーを 計算メンバー として定義することもできます。 計算メンバーは、セッションまたはユーザーに対して範囲を設定できます。

メジャーまたはメジャー グループを作成するには、次のいずれかの方法を使用します。

キューブ ウィザード SQL Server Data Tools (SSDT) でキューブ ウィザードを実行してキューブを作成します。

ソリューション エクスプローラーで、[ キューブ ] を右クリックし、[ 新しいキューブ] を選択します。 これらの手順に関するヘルプが必要な場合は、 多次元モデリング (Adventure Works チュートリアル) を参照してください。

既存のデータ ウェアハウスのテーブルに基づいてキューブを作成すると、メジャーとメジャー グループの定義がキューブ作成プロセスの一部として具体化されます。 ウィザードでは、キューブ内のメジャー およびメジャー グループ オブジェクトの基礎として使用するファクトとファクト テーブルを選択します。
新しい測定ダイアログ SQL Server Data Tools (SSDT) にキューブが既に存在する場合は、ソリューション エクスプローラーでキューブ名をダブルクリックしてキューブ デザイナーで開きます。 [メジャー] ウィンドウで、最上位ノードを右クリックし、ソース テーブル、列、集計の種類を指定して、新しいメジャー グループまたは新しいメジャーを作成します。 この方法を使用するには、事前構築済み関数の固定リストから集計方法を選択する必要があります。 より一般的に 使用される集計については、「集計関数を使用 する」を参照してください。
計算されるメンバー 計算されるメンバーは、作成のタイミングと方法を制御できるため、Analysis Services のキューブに柔軟性と分析機能を追加します。 メジャーが一時的に必要な場合や、ユーザー セッションの期間中、または調査の一環として Management Studio で必要な場合があります。

SQL Server Data Tools (SSDT) で、[計算] タブを開き、新しい計算メンバーを作成します。

MDX 式に基づいてメジャーを使用する場合は、この方法を選択します。 詳細については、 MDX でのメジャーの構築計算多次元モデルでの計算 および MDX スクリプトの基礎 (Analysis Services) に関するトピックを参照してください。
MDX または XMLA SQL Server Management Studio では、MDX または XMLA を実行して、新しい計算メジャーを含むようにデータベースを変更できます。 この方法は、ソリューションがサーバーにデプロイされた後のデータのアドホック テストに役立ちます。 Analysis Services データベースのドキュメントとスクリプトを参照してください。

測定の構成要素

測定基準はプロパティを持つオブジェクトです。 メジャーには、名前に加えて、集計の種類とソース列、またはデータを含むメジャーの読み込みに使用される式が必要です。 メジャー定義を変更する場合は、そのプロパティを設定します。

ソース ほとんどのメジャーは、AdventureWorks データ ウェアハウスの Internet Sales テーブルや Reseller Sales テーブルの Sales Amount 列など、外部データ ウェアハウスのファクト テーブルの数値列から取得されますが、定義した計算に基づいて新しいメジャーを作成することもできます。

ディメンション テーブルの属性列を使用してメジャーを定義できますが、そのようなメジャーは通常、集計動作の観点から準加法または非加法です。 準加法の動作の詳細については、「準加法動作の 定義」を参照してください。
集計 既定では、測定値は各ディメンションに沿って集計されます。 ただし、 AggregateFunction プロパティを使用すると、この動作を変更できます。 一覧については、「 集計関数を使用 する」を参照してください。
プロパティ メジャー プロパティの構成」を参照して、他のプロパティの説明を確認してください。

ファクトとファクトテーブルに関するメジャーおよびメジャーグループのモデル化

ウィザードを実行する前に、メジャー定義の背後にあるモデリングの原則を理解するのに役立ちます。

指標と指標グループは、外部データ ウェアハウスにおけるファクトやファクトテーブルを表現する多次元オブジェクトです。 ほとんどの場合、指標や指標グループはデータソースビュー内のオブジェクトに基づいており、それは基礎となるデータウェアハウスから作成されています。

次の図は 、FactSalesQuota ファクト テーブルと、それに関連付けられている 2 つのディメンション テーブル DimTimeDimEmployee を表しています。 Adventure Works サンプル キューブでは、これらのテーブルは Sales Quotas メジャー グループの基盤として、また Time および Employee の各ディメンションとして使用されます。

2 つのディメンション テーブルを持つ FactSalesQuota テーブル)

ファクト テーブルには、属性列とメジャー列という 2 種類の基本的な列が含まれています。

  • 属性列は、ディメンション テーブルに含まれるデータによって数量化可能なデータを整理できるように、ディメンション テーブルへの外部キー リレーションシップを作成するために使用されます。 属性列は、ファクト テーブルとそのメジャー グループの粒度を定義するためにも使用されます。

  • メジャー列は、メジャー グループに含まれるメジャーを定義します。

キューブ ウィザードを実行すると、外部キーが除外されます。選択する残りの列の一覧には、メジャー列と、外部キーとして識別されない属性列が表示されます。 FactSalesQuote の例では、ウィザードは SalesAmountQuota に加えて CalendarYearCalendarQuarter を提供します。 SalesAmountQuota メジャー列のみが、多次元モデルに対して実行可能なメジャーになります。 他の日付ベースの列は、各割当量を定義するために存在しています。 他 の列 CalendarYearCalendarQuarter は、キューブ ウィザードのメジャー リストから除外する必要があります (または、デザイナーで後でメジャー グループから削除します)。

この議論から汲み取るべき点は、ウィザードによって提供されるすべての列がメジャーとして役立つわけではないということです。 データの理解と、メジャーとして使用する列を決定する際の使用方法に依存します。 データ ソース ビューでテーブルを右クリックしてデータを探索できることに注意してください。これは、メジャーとして使用する列を識別するのに役立ちます。 詳細については、「 データ ソース ビュー (Analysis Services) のデータの探索 」を参照してください。

すべての指標がファクトテーブルの列に保存された値から直接導出されるわけではありません。 たとえば、Adventure Works サンプル キューブの Sales Quota メジャー グループで定義されている Sales Person Count メジャーは、FactSalesQuota ファクト テーブルの EmployeeKey 列の一意の値 (または個別のカウント) の数に基づいています。

測定グループの粒度

メジャー グループには、ファクト テーブルがサポートする詳細レベルを示す粒度が関連付けられています。 粒度は、ディメンションへの外部キーリレーションシップによって設定されます。

たとえば、 FactSalesQuota ファクト テーブルには DimEmployee テーブルとの外部キーリレーションシップがあり、 FactSalesQuota テーブルの各レコードは 1 人の従業員に関連しているため、Employee ディメンションから見たメジャー グループの粒度は個々の従業員レベルになります。

メジャー グループの粒度は、メジャー グループを表示するディメンションの最下位レベルよりも細かく設定することはできませんが、追加の属性を使用して粒度を粗くすることができます。 たとえば、 FactSalesQuota ファクト テーブルでは、 TimeKeyCalendarYearCalendarQuarter の 3 つの列を使用して、 DimTime テーブルとのリレーションシップの粒度を確立します。 その結果、時間ディメンションから表示されるメジャー グループの細分性は、時間ディメンションの最下位レベルである日単位ではなく、カレンダー四半期単位になります。

キューブ デザイナーの [ ディメンション 使用法] タブを使用して、特定のディメンションに関連するメジャー グループの細分性を指定できます。 ディメンションリレーションシップの詳細については、「 ディメンションリレーションシップ」を参照してください。

こちらもご覧ください

多次元モデル内のキューブメジャーおよびメジャー グループ