ひとことで言うと#
「データを多次元のキューブとして捉え、自由に切り口を変えながら集計・分析する手法」。売上データを「地域×商品×期間」のように複数の軸で瞬時に集計し、ドリルダウン(詳細化)やスライス(断面切り出し)で深掘りする。Excelのピボットテーブルの上位互換。
押さえておきたい用語#
- ファクト(事実データ)
- OLAPキューブの中心にある集計対象の数値のこと。売上金額、販売数量、利益率など、分析で「いくら?何個?」と問うデータ。
- ディメンション(次元)
- データを分類する切り口のこと。時間、地域、商品カテゴリ、顧客セグメントなど。ディメンションの組み合わせで多角的に見られる。
- ドリルダウン
- 集約されたデータをより詳細なレベルに掘り下げる操作のこと。年→四半期→月→日のように段階的に深掘りする。
- スライス
- 多次元データから1つの次元を固定して断面を切り出す操作のこと。「東京の売上だけ」のように条件を絞って表示する。
- スタースキーマ
- ファクトテーブルを中心に、周囲にディメンションテーブルを星型に配置するデータベース設計のこと。OLAP分析の基本設計パターン。
OLAP分析の全体像#
こんな悩みに効く#
- 経営会議で「地域別に見せて」「前年比も出して」と次々に切り口を変えた分析を求められる
- Excelの集計では時間がかかりすぎて、リアルタイムな分析ができない
- データの「なぜ?」を深掘りしたいが、毎回SQLを書き直すのが面倒
基本の使い方#
OLAP分析の基本は、「何を」「どんな切り口で」分析するかを明確にすること。
- ファクト(事実データ): 集計したい数値。売上金額、販売数量、利益率など
- ディメンション(次元・軸): 切り口となる属性。時間、地域、商品カテゴリ、顧客セグメントなど
- メジャー(指標): ファクトに対する集計方法。合計、平均、カウント、最大値など
例: 売上金額(ファクト)を、地域(ディメンション)×商品カテゴリ(ディメンション)×月(ディメンション)で合計(メジャー)する。
多次元データを探索する4つの基本操作を理解する。
- スライス: 1つの次元を固定して断面を切り出す(例: 「東京の売上」だけを表示)
- ダイス: 複数の次元で条件を絞る(例: 「東京×食品カテゴリ×2025年」)
- ドリルダウン: より詳細なレベルに掘り下げる(例: 年→四半期→月→日)
- ドリルアップ(ロールアップ): より上位のレベルに集約する(例: 日→月→年)
分析の流れ:
- 全体の傾向を俯瞰する(ドリルアップ状態)
- 気になるポイントを見つける
- ドリルダウンして原因を深掘りする
- スライス・ダイスで特定の条件に絞り込む
分析用途に応じた多次元データ構造を設計する。
設計のポイント:
- スタースキーマ: 中心にファクトテーブル、周囲にディメンションテーブルを配置する基本設計
- 階層の定義: 時間(年→四半期→月→日)、地域(国→地方→都道府県→市区町村)など
- 事前集計: よく使う集計パターンはあらかじめ計算しておき、応答速度を上げる
ツールの選択肢:
- BIツール: Tableau、Power BI、Looker などに内蔵のOLAP機能
- 専用エンジン: Apache Druid、ClickHouse、Apache Kylin
- 簡易的な方法: Excelのピボットテーブル、Googleスプレッドシート
OLAP分析で発見した知見を意思決定や施策に結びつける。
- ドリルダウンで発見した異常値の原因を調査し、対策を立てる
- 好調な地域・商品の成功要因を分析し、他に横展開する
- 定期的なOLAP分析をダッシュボードに組み込み、モニタリングを自動化する
ポイント: OLAP分析は「発見」のツール。発見した知見を具体的なアクションに落とし込むところまでがセット。
具体例#
状況: 全国100店舗を展開する小売チェーン。月次の売上レポートは全社合計のみで、どの地域・商品で問題が起きているかの特定に毎回時間がかかっていた。
OLAPキューブの設計:
- ファクト: 売上金額、販売数量、粗利
- ディメンション: 時間(年/四半期/月/週/日)、地域(地方/都道府県/店舗)、商品(大分類/中分類/小分類/SKU)
分析の流れ:
- 全体俯瞰: 3月に前年比5%減を発見
- 地域ドリルダウン: 関東が10%減と突出
- スライス: 関東に絞って商品カテゴリ別を確認 → 家電が20%減
- さらにドリルダウン: エアコンの売上が激減
- 原因特定: 在庫切れが3月上旬から発生していた
結果: 従来1週間かかっていた原因分析が30分で完了。在庫管理プロセスの改善により、翌月には売上回復を実現。
状況: 月商3億円のECサイト。広告費を全国均等に配分しているが、地域によってROIに大きな差がある。
OLAP分析:
- ディメンション: 地域(都道府県)× 時間帯(0〜23時)× デバイス(PC/スマホ)× 広告チャネル
- ファクト: 広告費、CV数、売上
発見:
- 東京・大阪は22〜24時のスマホ経由CVが全体の35%を占める
- 地方都市は18〜20時のPC経由が中心
- SNS広告のROIが地方で特に高い(都市部の1.8倍)
施策: 地域×時間帯×デバイスの組み合わせで広告配信を最適化。
結果: 広告費の総額は変えずに、全体のROASが280%→590%(2.1倍)に改善。月間のCV数が4,200件→6,800件に増加。
状況: MR(医薬情報担当者)200人が全国の医療機関を訪問。訪問回数と処方量の関係が見えず、訪問計画が属人的。
OLAPキューブ:
- ディメンション: 担当MR × 医療機関タイプ × 地域 × 製品 × 時期
- ファクト: 訪問回数、処方量、前年比成長率
ドリルダウン分析で判明:
- 月4回以上訪問した大病院の処方量は前年比+15%
- 月1回未満のクリニックは前年比-8%
- ただし中規模病院は月2回以上で効果が頭打ち
施策: 医療機関タイプ別の最適訪問頻度をデータで定義し、訪問計画を再設計。
結果: MR1人あたりの生産性(処方量/訪問回数)が28%向上。全体の処方量が前年比+9%で、業界平均+3%を大きく上回った。
やりがちな失敗パターン#
- ディメンションを増やしすぎる — 10個以上の次元を作ると、データ量が爆発し応答速度が低下する。分析で実際に使う軸を5〜7個に絞る
- 分析だけして満足する — ドリルダウンして原因を発見しても、アクションにつなげないと意味がない。分析結果を必ず施策に変換する
- データの粒度を間違える — 日次で十分なのに秒単位のデータを格納すると、コストと複雑さが増す。分析の目的に合った粒度を選ぶ
- 階層構造を設計しない — フラットなデータでは段階的なドリルダウンができない。時間・地域・商品の各ディメンションに階層を定義することがOLAP活用の鍵
まとめ#
OLAP分析は、多次元データを自在に切り口を変えながら高速に分析する手法。ファクトとディメンションを適切に設計し、スライス・ダイス・ドリルダウンの操作を使いこなすことで、データの「なぜ?」に素早く答えられる。まずはBIツールのピボット機能から始め、分析の切り口と深掘りの感覚を身につけよう。