単なるテーブルではなく、スタースキーマを使うべき3つの理由
![](https://excel.value.or.jp/wp-content/uploads/2020/10/image-14-150x34.png)
「スタースキーマ」とは、販売データなどの「ファクトテーブル」を真ん中に置き、その周りに顧客IDや店舗所在地などのデータの切り口となる「ディメンションテーブル」を配置するという、見た目が「星型の表」になる「データモデル」の基本形です。
基本は、星形の表
![](https://excel.value.or.jp/wp-content/uploads/2020/07/tori_good-1.png)
星形の表という意味の「スタースキーマ」がデータモデルの基本形だよ!
![](https://excel.value.or.jp/wp-content/uploads/2020/10/image-15.png)
小さなデータであればさほど影響は出ません。
しかし、ビッグデータになるほどのその差は歴然です。
つまり、ビッグデータを対象にしたデータ分析や見える化をしたいというのであれば、「スタースキーマ」を検討する必要があるわけです。
- 1.使いやすい
- 2.DAXが書きやすい
- 3.パフォーマンスが良い
![](https://excel.value.or.jp/wp-content/uploads/2020/10/image-14.png)
スタースキーマは、使いやすい
データが大きくなればなるほど、単なるテーブルでは迷子になりやすいです。
そこで、スタースキーマを使う必要性が出てきます。
スタースキーマであれば、目的のデータ(ファイル、列、メジャーなどを含む)を探しやすくなり、レポート作成をしやすくなります。
スタースキーマは、DAXが書きやすい
VBAマクロを触ったことがある人ならば、一度ならずとも「なんだこのコード?わかりづらい!」という経験をされたことがあると思います。
同様なことが、単なるテーブルの場合にも発生しやすく、コードがわかりづらくなってしまうことがよくあります。
「モダンExcel」ならば、こうしたコードの読みづらさを解消できます。
しかも、スタースキーマにすれば、コードを読みやすく、書きやすくもできます。
DAXを使う際、表示上の工夫もポイントの一つになりますが、その話はまた別の機会に紹介します。
なお、DAXの特徴的な関数である「タイムインテリジェンス関数」を使いこなすには、「カレンダーテーブル」を作成することが必須です。
「カレンダーテーブル」とは、「一意の連続した日付」を持つテーブルです。
「CALENDARAUTO」関数などを使うと、カレンダーを簡単に作成できて便利です。
「カレンダーテーブル」に関して、先日twitterを見ていると衝撃ツイートに出くわしました。
![](https://excel.value.or.jp/wp-content/uploads/2020/07/anger-1428042_1280.png)
俺の1年、返せ!
何事かとツイートを読み進めると、パワーピボットを使って前年比や累計などをDAXというデータ分析式できちんと書いているにもかかわらず、思うように計算されず、結局これまで同様、Excelの関数などを使ってわざわざ別途計算していた、というのです。
それは、大変だったわね……。
![](https://excel.value.or.jp/wp-content/uploads/2020/07/図1.png)
そして、あることに気づき、上述のような発言になったというのです。
それが、これ。
![](https://excel.value.or.jp/wp-content/uploads/2020/07/cat2_1_idea.png)
前年比や累計などをDAXで計算しようとするには「カレンダーテーブル」が必要なんだね。
知らなかったよ!
パワーピボットを使いこなす基本は、販売データのような「ファクトテーブル」を中心に置き、その周りに顧客名や販売地域など、データの切り口となる「ディメンションテーブル」を配置するとともに、DAXを使うのであれば「カレンダーテーブル」も必要になるということを知っておいてください。
スタースキーマは、パフォーマンスが良い
ビッグデータ(数億行~)になるほど、単なるテーブルよりも「スタースキーマ」を使う方が、処理を短時間でできるようになります。
1,000万行程度のデータを更新する事例で、単なるテーブルの場合はその処理に30分余りかかったのに対し、「スタースキーマ」によるその処理はわずか3分余り、その差は歴然です。
データモデルには「スタースキーマ」以外のデータモデルもありますよ。
まずは基本の「スタースキーマ」を理解しましょうね。
![](https://excel.value.or.jp/wp-content/uploads/2020/07/図1.png)
基本の「スタースキーマ」、それ以外のデータモデルについては、拙著「モダンExcel入門」、第2章PART3『データモデルの基本は”星形の表”=「スタースキーマ」』P121~をご参照ください。
![](https://excel.value.or.jp/wp-content/uploads/2020/10/image-14-300x69.png)
モダンExcel研究所
フォローお待ちしてます!
「モダンExcel」の入門書
![「モダンExcel」の入門書](https://excel.value.or.jp/wp-content/uploads/2021/06/modaenexcel-212x300.jpg)