時間テーブルの生成による時間ディメンションの作成

Microsoft SQL Server Analysis Services では、ソース データベースに使用できる時間テーブルがない場合に、SQL Server データ ツール (SSDT) のディメンション ウィザードを使用して時間ディメンションを作成できます。 この操作を行うには、[作成方法の選択] ページで次のいずれかのオプションを選択します。

  • [データ ソースに時間テーブルを生成]   基になるデータ ソースにオブジェクトを作成する権限がある場合に、このオプションを選択します。 ウィザードによって時間テーブルが生成され、このテーブルがデータ ソースに格納されます。 次に、ウィザードによってこの時間テーブルから時間ディメンションが作成されます。

  • [サーバーに時間テーブルを生成]   基になるデータ ソースにオブジェクトを作成する権限がない場合に、このオプションを選択します。 ウィザードによってテーブルが生成され、データ ソースではなくサーバーに格納されます (時間テーブルからサーバーに作成されたディメンションをサーバー時間ディメンションと呼びます)。次に、ウィザードによってこのテーブルからサーバー時間ディメンションが作成されます。

時間ディメンションを作成する場合は、時間間隔と、ディメンションの開始日および終了日を指定します。 ウィザードでは、指定された時間間隔を使用して、時間属性を作成します。 ディメンションを処理すると、Analysis Services では指定された日付と時間間隔のサポートに必要なデータを生成して格納します。ウィザードでは、時間ディメンション用に作成された属性を使用して、ディメンションの階層が推奨されます。 この階層は、異なる時間間隔の関係を反映しており、また各種のカレンダーを考慮しています。 たとえば、標準のカレンダー階層では、週レベルは年レベルの下に表示されますが、月レベルの下には表示されません。これは、週は年に均一に分割されますが、月には均一に分割されないためです。 一方、製造カレンダーまたはレポート カレンダー階層では、週は均一に月に分割されるので、週レベルは月レベルの下に表示されます。

時間間隔の定義

ウィザードの [時間間隔の定義] ページを使用すると、ディメンション内に含める日付の範囲を指定できます。 たとえば、データの中で一番古い年の 1 月 1 日に始まり、現在の年の 1 年後または 2 年後に終わる (将来のトランザクションを可能にするため) 範囲を選択できます。 この範囲外のトランザクションは、そのディメンションの UnknownMemberVisible プロパティ設定によって、表示されないか、またはディメンション内で不明メンバーとして表示されます。 また、データで使用する週の開始日を変更することもできます (既定では日曜に設定されます)。

年、半期、四半期、三半期、月、10 日間、週、日付など、ウィザードで階層を作成する際に使用し、データに適用する時間間隔を選択します。 最短でも、日付以上の時間間隔を選択する必要があります。 Date 属性はディメンションのキー属性であるので、この属性がないとディメンションは機能できません。

[時間メンバー名の言語] の横で、ディメンションのメンバーのラベル付けに使用する言語を選択します。

日付範囲に基づいた時間ディメンションを作成した後は、ディメンション デザイナーを使用して、時間属性を追加または削除できます。 Date 属性はこのディメンションのキー属性であるため、この属性を削除することはできません。 Date 属性をユーザーに対して非表示にするには、この属性の AttributeHierarchyVisible プロパティを False に設定します。

カレンダーの選択

1 月 1 日に始まり 12 月 31 日に終わる標準 (グレゴリオ暦) の 12 か月のカレンダーは、時間ディメンションの作成時に常に含まれます。 ウィザードの [カレンダーの選択] ページでは、ディメンション内の階層の基になるカレンダーをさらに指定できます。 カレンダーの種類の説明については、「日付型ディメンションの作成」を参照してください。

ウィザードの [時間間隔の定義] ページで選択した時間間隔に応じ、カレンダーの選択によって、ディメンションに作成される属性が決定されます。 たとえば、ウィザードの [時間間隔の定義] ページで [年][四半期] の時間間隔を選択し、[カレンダーの選択] ページで [会計カレンダー] を選択した場合は、会計カレンダーに対して FiscalYear、FiscalQuarter、および FiscalQuarterOfYear 属性が作成されます。

また、カレンダーに対して作成される属性で構成されるカレンダー固有の階層も作成されます。 カレンダーごとに、各階層の各レベルがその上のレベルにロール アップされます。 たとえば、標準の 12 か月カレンダーでは、ウィザードによって、Years と Weeks または Years と Months という階層が作成されます。 ただし、標準のカレンダーでは月ごとの週の数は同じではありません。したがって、Years、Months、および Weeks の階層はありません。 これに対して、レポートまたは製造カレンダーでは、週は各月に均等に割り当てられています。したがって、これらのカレンダーの週は月にロール アップされます。

ディメンション ウィザードの完了

[ウィザードの完了] ページで、ウィザードによって作成された属性と階層を確認し、時間ディメンションに名前を付けます。 [完了] をクリックしてウィザードを終了し、ディメンションを作成します。 ディメンションが完成したら、ディメンション デザイナーを使用してそのディメンションを変更できます。

関連項目

概念

多次元モデルのデータ ソース ビュー

日付型ディメンションの作成

データベース ディメンション プロパティ

ディメンション リレーションシップ

時間テーブルの生成による時間ディメンションの作成

データ ソースに時間テーブル以外のテーブルを生成することによるディメンションの作成