データベース設計の基礎まとめ【概念設計・論理設計・物理設計を解説】

データベース設計に関するブログのアイキャッチ画像 データベース
広告

 このページでは,基本情報技術者試験をはじめとする情報処理技術者試験で必須となる,データベース設計についてシンプルにまとめています。データベース設計の全体像として,概念設計・論理設計・物理設計の役割と流れ,さらに,データモデルの種類(階層・ネットワーク・関係)について,図や表を使用して説明しています。まずは全体の流れをつかみ,その後に各項目を詳しく学ぶための入口として活用してください。

広告

データベース設計の全体像と流れ

 データベースは,概念設計,論理設計,物理設計の3つの段階を経て実装します。

概念設計とは

 概念設計は,システム開発の上流工程で行われます。データベース化の対象となる実世界のデータを,その意味や関係を崩すことなくモデル化します。一般的には,E-R図を使用してモデル化し,モデル化したものを概念データモデルといいます。概念データモデルは,実装するコンピューターとは独立した(依存しない)ものとします。

論理設計とは

 論理設計は,システム開発の外部設計(データベース設計)で行われます。論理設計では,実際にデータベース化する部分のみを,実装するデータベース(階層型,ネットワーク型,関係)に合わせて,論理データモデルとしてモデル化します。

物理設計とは

 物理設計は,システム開発の内部設計で行われます。使用するデータベース管理システム(DBMS)に合わせて,データ量や,データの使用頻度,パフォーマンス性などを考慮し,物理データモデルとしてモデル化します。物理データモデルは,データベース用の言語を使用して,実際に記憶装置に記憶するときの構造を記述した(実装に依存する)ものになります。

広告

データモデルの種類と特徴

階層モデルとは

 階層モデルは,データの構造を階層構造(木構造)により表現するデータモデルです。1つの親レコードに対して子レコードは複数存在することができますが,1つの子レコードに対しては親レコードは1つだけ存在することができます。

ネットワークモデルとは

 ネットワークモデルは,1つの親レコードに対して子レコードは複数存在することができ,1つの子レコードに対しても親レコードは複数存在することができます。

関係モデルとは

 関係モデルは,データを2次元の表で表現するデータモデルです。関係データベースは,親子関係を持もちませんので,関連付けるためには,表中の列の値を用います。

※ 現在は,主に関係モデルが使用されている

まとめ

 今回は,データベース設計について,概念設計・論理設計・物理設計という3つの段階の流れと,それぞれの役割,さらにデータモデルの種類(階層モデル、ネットワークモデル、関係モデル)について,シンプルにまとめてみました。データベースは,実世界のデータを正しくモデル化し,段階的に具体化していくことが重要です。まずは全体の流れをしっかり理解し,その上で各設計段階の内容を一つずつ確認していきましょう。試験対策としても,基礎となる大切な分野ですので,確実に押さえておきたいポイントです。

 理解が進んだら,過去問題等にもチャレンジしてみてください。