分散DB・2相コミット・NoSQL・DWH 重要度:★★出題: AM2・PM1
スタースキーマ・スノーフレークスキーマ(DWH・多次元分析)
すたーすきーますのーふれーくすきーま / Star Schema & Snowflake Schema (Data Warehouse / OLAP)
データウェアハウス(DWH)において、数値データを保持する中心の「ファクト表」と、分析軸(時間・商品・店舗・顧客等)を保持する周囲の「ディメンション表」を放射状に配置するデータモデル。
3行速習ポイント
- スタースキーマではディメンション表をあえて非正規化(第2正規形など)して1階層にまとめ、ファクト表との結合(JOIN)回数を最小化してOLAP集計を高速化する
- ディメンション表を正規化して階層構造(例:店舗 → 市区町村 → 都道府県 → 地方)に分解したものをスノーフレークスキーマと呼ぶ
- OLAPの代表操作には、特定断面を切り出す「スライス」、複数軸で絞り込む「ダイス」、詳細階層へ掘り下げる「ドリルダウン」、上位階層へ集約する「ロールアップ(ドリルアップ)」がある
図解
図スタースキーマとスノーフレークスキーマの構造比較
スタースキーマ(非正規化次元)検索速度優先
ファクト表の周囲に1階層のディメンション表を配置し、JOIN回数を最小化して集計を高速化
スノーフレークスキーマ(正規化次元)正規化維持
ディメンション表を階層ごとに正規化分解。データ重複は減るがJOIN段数が増加
概要と本質
午前IIのDWH・ビッグデータ分野で定番の出題テーマです。OLTP(オンライントランザクション処理)では更新時異状を防ぐために第3正規形への正規化を徹底しますが、参照・集計専用のDWH(OLAP)では結合コスト削減を優先してスタースキーマ(ディメンション表の非正規化)を採用する対比が重要です。
重要ポイント・コア概念
- ファクト表(事実表):売上金額、販売数量などの数値(メジャー)と、各ディメンション表を参照する外部キー群(複合主キー)で構成される巨大な表
- ディメンション表(次元表):日付マスタ、商品マスタ、店舗マスタなど、GROUP BYやWHERE句の絞り込み条件・分析軸となる属性を持つ表
- ビットマップ索引(Bitmap Index):性別や地域区分などカーディナリティが低く更新頻度の少ないDWHのディメンション列に対して、複数条件のAND/ORビット演算を高速に行える索引
午後I・午後II記述試験での攻略ポイント
午前IIで「スタースキーマの特徴はどれか(→ファクト表を中心に非正規化されたディメンション表を配置し結合回数を減らす)」「ドリルダウン/ロールアップ/スライス/ダイスの説明はどれか」が頻出です。ビットマップ索引がDWH向き(OLTPの高頻度更新には不向き)である点も押さえましょう。
午後記述で使える加点キーワード(クリックでコピー)
この用語が出題された過去問を解く(1分演習)
即時アウトプットで定着データベーススペシャリスト 過去問演習で実践力を鍛える