「データウェアハウスがわかる本」を読んだメモ

「データウェアハウスがわかる本」を読んだので、まとめ。

データウェアハウスがわかる本

データウェアハウスがわかる本

データウェアハウスの概念
  • サブジェクト志向
    • データ中心、あるいはデータ主導のデータモデル化を行うこと
    • データウェアハウスは業務から独立して、企業の主要なサブジェクトに沿ったデータモデル化を行う
    • たとえば
      • 顧客や商品といった実体は、特定の業務処理に依存する基幹系データベースのデータモデルとは異なり、企業の主要なサブジェクトとして扱う
      • 企業活動の意思決定において、「顧客」や「商品」とは何かを明確化する必要がある
  • 統合
    • 格納されるデータを統合する
    • データ(属性)の命名規則、単位、コード体系、データ形式を統一すること
  • 時系列
    • 過去から現在までの、時系列的な集まりから構成される
  • 不変性
    • 一度正しく蓄積されたデータは更新されることがない

f:id:goodbyegangster:20180209021110p:plain

データウェアハウスとデータマートの特徴
  • データウェアハウス
    • 全社レベルのデータ共有
    • 多数のサブジェクトから構成
  • データマート
データ粒度(詳細化と要約化)
  • データの粒度(データの集計単位の大きさ)を意識して設計する
  • 蓄積するデータを詳細レベルと要約レベルから捉える必要がある
データの冗長生成
  • 重複データ
    • 正規化したテーブルである必要はない
    • テーブル結合に必要な属性を、各テーブルに重複して持たせることで、結合処理を不要することも重要
  • 導出データ
    • 複数のデータから集計した結果得られた新たなデータを格納する
    • 要約レベル
      • 合計値、平均値、最大値、最小値など
    • 詳細レベル
      • 複数の属性をもとに集計した値
データモデル
  • スタースキーマ
    • 事実表(fact table)
      • 分析の核となるデータ要素
      • 次元の交点から求められる数値データを格納
      • 事実表の主キーは、次元表の主キーを参照する外部キーとなる
    • 次元表(dimension table)
      • 次元について説明する情報を格納
  • スノーフレークスキーマ
    • スタースキーマの次元表が、集計レベルで正規化されて階層化されたもの
    • たとえば
      • 年テーブル、月テーブル、日テーブルのように、次元表が階層化されて設計される

f:id:goodbyegangster:20180209021115p:plain

データウェアハウス構築の開発手順
  • 情報戦略ステージ
    • 戦略計画フェーズ
      • データウェアハウスの狙いと目標を設定
    • 業務分野分析フェーズ
      • 意思決定支援を行う業務領域を明確化
      • 戦略契約を実現するために必要なシステム化の範囲を定義
    • 業務要求記述フェーズ
      • 戦略計画を企業の意思決定支援の活動領域と結びつける
      • ビジネスシナリオを作成
  • 概念データモデリングステージ
    • データ分析フェーズ
    • 概念設計フェーズ/データソース分析フェーズ
      • グローバルデータウェアハウスの概念設計
        • 正規化した実体型と関連を設計
        • 必要に応じて非正規化
        • データソースの明確化
    • ネーミング設計とコード設計フェーズ
      • 設計
        • データ名称の命名基準と名前
        • コードの付与基準
        • 単位
        • データ形式(データ型、長さ)
    • データウェアハウス管理プラットフォーム構築ステージ
      • 分散設計フェーズ
        • データの分散配置の戦略
      • 論理物理設計フェーズ
      • 構築フェーズ
        • データの抽出、変換
        • データウェアハウスの生成
    • アプリケーションプラットフォーム構築ステージ
      • データマートの概念設計フェーズ
      • データマートの論理および物理設計(内部スキーマの作成)
      • 画面・帳票設計フェーズ
      • 構築フェーズ