キューブの基本構造
では、キューブの基本構造を順次、見てみましょう。本書で使用するサンプルとして、次のような簡単なキューブを想定します。
このサンプルキューブは売上金額、売上数量などの販売データ(図2の中央「URIAGE
」)を集計対象データとし、分析軸として「都道府県-得意先」、「商品分類-商品」、「担当部署-担当者」、および「売上日付」という4つの分析軸(ディメンション)を持った、売上分析用のキューブです。
1)メジャーとディメンション
ディメンションとは、例えば商品名や年月などの「数値を集計・分析したい軸」であり、メジャーとは、金額や数量などの「集計対象の数値データ」です。MDXではメジャーもディメンションの一種と捉えることができます。「特殊なディメンション」であると考えてよいでしょう。
サンプルキューブのメジャーとディメンション構造を以下に詳述します。
このキューブでは、データの最小単位(セルと呼びます)は「売上日」「得意先」「商品」「担当者」ごとの「売上金額」または「売上数量」または「原価金額」です。また、各ディメンションは「商品分類-商品名」「都道府県-得意先」など階層構造を持ち、それぞれの階層ごとにメジャー数値が集計可能です。
では、このキューブのディメンションの構造についてもう少し詳しく記述します。
TOKUISAKIディメンションの構造
<データ構造>
- 得意先は都道府県コードを属性に持ち、1つの都道府県に属している。
- 1つの都道府県には複数の得意先が存在している。
TOKUISAKI
(得意先マスタ)のキーは「TOKUICD
」である。TODOFUKEN
(都道府県マスタ)のキーは「TODOFUKENCD
」である。
<階層構造>
[TOKUISAKI]
ディメンションはTODOFUKEN
→TOKUISAKI
という階層構造を持っており、階層名は「TODOFUKEN-TOKUISAKI
」である。- 階層「
TODOFUKEN-TOKUISAKI
」は「TODOFUKEN
」「TOKUISAKI
」という2つのレベルから構成されている。
[SHOHIN]
ディメンション、および[TANTO]
ディメンションも同様の構造を持っていることとし、以下にはイメージ図のみを図示します。
URIAGE DATEディメンションの構造
[URIAGE DATE]
ディメンションには、伝票日付(DENPYMD
)から、「年、月、日」の構造を持つ階層[YYYY-MM-DD]
を生成してあるものとします。