DAMA-DMBOK 2nd Edition — Chapter 11: Data Warehousing and Business Intelligence
| 比較項目 | Inmon | Kimball |
|---|---|---|
| 方向 | Top-Down | Bottom-Up |
| 開始点 | EDW(全社統合)を先に | データマートを先に |
| データモデル | 3NF(正規化) | スタースキーマ(非正規化) |
| 整合性 | 高い(単一データモデル) | 中(コンフォームドDIMで担保) |
| 初期コスト | 高(全体設計が先) | 低(部門別に段階的) |
| Time-to-Value | 長い(12〜24ヶ月) | 短い(3〜6ヶ月) |
| 典型的な失敗 | 完成前に陳腐化 | データマート間の不整合 |
| コンポーネント | 説明 | 特徴 |
|---|---|---|
| Staging Area | ソースから抽出した生データの一時保管場所 | 処理後は削除・上書き。ETLエンジンのみアクセス |
| ODS(Operational Data Store) | 現在の統合データ(リアルタイム/ほぼリアルタイム) | 継続的に更新。オペレーション部門が利用 |
| DWH(Data Warehouse) | 長期の分析用データ | Non-Volatile(追記のみ)・Time-Variant |
| Data Mart | 特定部門・主題向けのサブセット | スタースキーマ・BIツールが直接参照 |
詳細化。年 → 四半期 → 月 → 日へと細かく掘り下げる
集約化。都道府県 → 地方 → 全国へと集計レベルを上げる
1次元を固定。「2023年のみ」でキューブを切り出す(3次元→2次元)
複数次元を絞り込み。「2022-23年 × 東京・大阪 × 家電」(次元数は変わらない)
軸の入れ替え。行:製品×列:年 → 行:年×列:製品
| 特性 | 説明 |
|---|---|
| Subject-Oriented 主題指向 | ビジネス主題(顧客・製品・売上)ごとに整理 |
| Integrated 統合 | 複数ソースを統合し一貫した形式で保持 |
| Non-Volatile 不変 | データは削除・更新されない(追記のみ) |
| Time-Variant 時間軸あり | 時系列でデータを保持(過去データも保持) |
| 種類 | 問いかけ | 例 |
|---|---|---|
| Descriptive 記述分析 | 何が起きたか? | レポート・ダッシュボード |
| Diagnostic 診断分析 | なぜ起きたか? | 原因分析・掘り下げ |
| Predictive 予測分析 | 何が起きるか? | 機械学習・統計モデル |
| Prescriptive 処方的分析 | 何をすべきか? | 最適化・AI推薦 |
| Inmon | Kimball | |
|---|---|---|
| 方向 | Top-Down | Bottom-Up |
| 開始点 | EDW(全社) | データマート(部門別) |
| スキーマ | 3NF(正規化) | スタースキーマ(非正規化) |
| 整合性 | 高い | コンフォームドDIMで確保 |
| Time-to-Value | 遅い | 速い(早期価値提供) |
| 用語 | 説明 |
|---|---|
| Staging Area | ETL前の一時保管領域(変換前の生データ) |
| ODS | リアルタイム統合データ(現在値) |
| コンフォームドディメンション | 複数マートで共有されるDIM |
| ELT | クラウドDWH向け(BigQuery/Snowflake) |
| ファクトテーブル | 数値指標を格納するテーブル(スタースキーマの中心) |
| 観点 | Inmon(Top-Down) | Kimball(Bottom-Up) |
|---|---|---|
| 構築順序 | EDW(全社)→ データマート | データマート → 統合 |
| 初期コスト | 高(全体設計が先) | 低(部門別に段階的) |
| Time-to-Value | 長い(12〜24ヶ月) | 短い(3〜6ヶ月) |
| 典型的な失敗 | 完成前に陳腐化 | データマート間の不整合 |
| 種類 | 粒度 | 適用例 | 特徴 |
|---|---|---|---|
| Transaction Fact | イベント1件 | 注文・クリック | 最も一般的。サイズ大 |
| Periodic Snapshot | 期間末時点 | 月末在庫・週次残高 | 定期的な状態を記録 |
| Accumulating Snapshot | プロセス1ライフサイクル | 受注〜出荷〜請求 | 複数マイルストーン日付を持つ |
| Factless Fact | イベント(メジャーなし) | 学生の授業出席 | カウント分析のみ |
| 成熟度 | 状態 |
|---|---|
| Level 1 | アドホックレポート(各自Excelで分析) |
| Level 2 | 標準レポート(IT製のレポートを受け取る) |
| Level 3 | セルフサービスBI(ユーザーが自分で分析) |
| Level 4 | 予測・意思決定支援(MLモデル統合) |
| Level 5 | AI駆動の自動最適化 |
| 最適化手法 | 効果 | 実装コスト |
|---|---|---|
| パーティショニング | date_skでパーティション → フルスキャン排除 | 中 |
| 集計テーブル(Aggregate Table) | 月次集計を事前計算 → クエリを大幅高速化 | 低(大効果) |
| カラム指向ストレージ | RedshiftやBigQueryへの移行 | 高 |
| インデックス最適化 | JOINキーへの複合インデックス | 低 |
| 並列化 | クエリを並列実行 | 中 |
| テスト種別 | 内容 |
|---|---|
| Reconciliation Test | ソース件数 vs DWH件数の一致確認 |
| Transformation Test | 変換ロジックの正確性確認 |
| Completeness Test | 全期間データが欠落なくロードされているか |
| DQ Test | DWH内のデータ品質チェック |
| Performance Test | クエリ応答時間・ETL処理時間の確認 |
| Regression Test | 変更後に既存レポートが変化していないことの確認 |