頻出中 ⏱ 7分★★★☆☆

DB設計フロー

要件定義→概念→論理→物理 の全工程を完全習得

DB設計は「要件→概念→論理→物理」の4フェーズで進む。各フェーズの成果物と担当が明確に分かれており、試験では各フェーズの目的・成果物が問われる。

設計フェーズ一覧
フェーズ目的主な成果物依存するもの
要件定義何を管理するか決める業務フロー、データ一覧ユーザーヒアリング
概念設計現実世界をモデル化ER図(エンティティ・関連)DBMS非依存
論理設計関係スキーマへ変換テーブル定義、正規化関係モデル
物理設計DBMS上で実装可能にするDDL、インデックス、パーティションDBMS依存

ER図でエンティティ(実体)・属性・関連(リレーションシップ)・カーディナリティを定義する。この段階では特定のDBMSを意識しない。

概念設計で多対多を見逃すと、論理設計で整合性問題が発生する。ER図レビューが重要。
変換ルール早見表
ER図上の構造変換後のテーブル構造
エンティティ1テーブル(主キー列必須)
1対多の関連「多」側テーブルに外部キーを追加
多対多の関連中間テーブルを新規作成(両エンティティのPKを持つ)
サブタイプ(is-a)① 親テーブルのみ、② 子テーブルのみ、③ 親+子テーブル の3戦略
複合属性各属性を別列に分割(第1正規形)
多値属性別テーブルに分離
物理設計はDBMS製品に依存する。同じ論理設計でも MySQL と Oracle で DDL が異なる。

論理設計では第3正規形(3NF)または BCNF まで正規化するのが基本。ただし性能要件によっては意図的に非正規化を採用する。

正規化非正規化(反正規化)
更新異常を防ぐJOIN 削減で検索高速化
データ整合性◎冗長データ・更新コスト増
OLTP向きDWH・レポート向き

📝 理解度チェック

概念設計の成果物として最も適切なものはどれか?
ER図上の多対多の関連をテーブルに変換するとき何が必要か?
物理設計が概念設計・論理設計と最も大きく異なる点はどれか?

読了ボタンを押すとトップページの進捗に反映されます