チートシート:データモデリングと設計
3層モデル(必須)
| レベル | 対象者 | 含む内容 |
|---|---|---|
| 概念(CDM) | ビジネス | エンティティ・関係のみ |
| 論理(LDM) | アーキテクト | 属性・データ型・正規化 |
| 物理(PDM) | DBA | テーブル・インデックス・DBMS固有 |
正規形(必須)
| 正規形 | 解消する問題 |
|---|---|
| 1NF | 繰り返しグループ・非原子値 |
| 2NF | 部分関数従属(複合キーの一部への依存) |
| 3NF | 推移的関数従属(非キー→非キーの依存) |
| BCNF | 全決定子が候補キーでない問題 |
スキーマパターン
| スキーマ | ディメンション | 特徴 |
|---|---|---|
| スター | 非正規化 | シンプル・高速クエリ |
| スノーフレーク | 正規化 | 整合性高・JOIN多い |
SCD タイプ
- Type 1: 上書き(履歴なし)
- Type 2: 新行追加 + 有効日付(履歴完全保持)
- Type 3: カラム追加(限定履歴)
キー
- ナチュラルキー: ビジネス意味あり(変更リスクあり)
- サロゲートキー: システム生成・意味なし(安定)