結論(先に要点)
正規化は設計の出発点
非正規化は後から行うチューニング
最初から正規化・非正規化を意識しすぎる必要はない
ER図をしっかり考える → 実装 → 問題が出た箇所だけ非正規化
が正解ルート
正規化とは何か
定義
同じ意味のデータを1か所だけに持つ設計
目的
データの重複を防ぐ
更新ミスや不整合を防止する
ER図で関係性を説明しやすくする
特徴
JOIN が増えやすい
クエリが複雑になりがち
安全で壊れにくい設計
非正規化とは何か