データモデリング
データベースが対象の実世界をモデル化、抽象化する行為
データベースを作ろうと思ったとき、どんなデータを入れるべきか決めないといけない
スキーマを用意
分析が必要
どんなことをしている?どんな人がいる?どんなデータを扱っているの?
詳細がわからないと設計は不可能
→要求分析
システムが担う機能、使われる場面など固める
データベース設計はデータモデリングを行なった後に3層スキーマなどを決定していく
実世界は混沌としていてリレーショナルデータモデルの論理モデルに落とし込むには結構ギャップがある
概念設計と論理設計で対応
概念設計
対象のドメインを分析
どんなデータを管理?どんな関連性?
これを整理したのが概念モデル
論理設計
概念モデルをデータベースの形に設計するのが論理設計
リレーショナルデータベースならリレーションの関係性など、三層スキーマでいう概念スキーマの部分など
三層スキーマの概念モデルと概念設計は別物なので混同しないように
概念設計
現実世界の情報を整理
論理設計
整理した情報をdbの形に
概念スキーマ
概念スキーマが固まると
外部スキーマと内部スキーマを