前回からの続きをメモ
前回の記事:
The Data Warehouse Toolkit を読む #3: Inventory
調達プロセスにおけるディメンショナル・モデルの構築。
Bus Matrix
調達プロセスをモデリングするならば、このような Bus Matrix が考えられる。
分かりやすくするために、行 (row) の定義と指標 (metrics) も書いてある。
Fact Table
そしてこの Bus Matrix からファクトテーブルを作るとこうなる。
Slowly Changing Dimension (SCD)
さて今回の本題は SCD の基本について。
Dimension の更新をどうするかという話。
基本形は2つ。上書き型の Type1 か、追記型の Type2 に分かれる。
SCD Type 1
Dimension に変更があった場合に値を上書き更新するのが SCD Type1.
つまりこういう事。
製品カテゴリが変わったのでそのまま上書き。
これだと過去の分析に問題ありますわな。
SCD Type 2
Dimension に変更があった場合に新たな行を追記するのが SCD Type2.
つまりこういう事。
開始日・終了日・現在フラグ この3個のカラムを使って新しい情報を追記していく。
PK には新しいサロゲートキーを割り当てる。
これなら過去のデータが変わらなくて良い。
他に応用系で Type7 まであるけど使うことはないからスルー
今回はここまで。
つづく。