

高岡智則
年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)
論理データモデルとは何か
データベースを作るときには どのような情報をどのように整理するかを決める必要があります。論理データモデルはその整理の段階の一つで、現実の世界の情報を「何をデータとして扱うか」「それらをどう結びつけるか」を図で表す方法です。物理的な保存方法や使うソフトウェアの話はまだ抜きにして、データの構造だけを考えます。
具体的には、現実の事物を「エンティティ」として、各エンティティが持つ特徴を「属性」として整理します。さらにエンティティ同士の関係を「関係」として描き、一意に決まる識別子を設けます。これによって後でプログラムやデータベース設計者が、データを正しく保存・照会できる土台を作れます。
論理データモデルの3つの要素
エンティティ とは現実のモノや概念をデータとして表す対象のことです。例として 生徒 や 科目、教員 などが挙げられます。
属性 はエンティティの特徴を表す情報です。生徒なら 氏名、生年月日、メールアドレス などが属性になります。
関係 はエンティティ同士のつながりを表します。たとえば「生徒が科目を学ぶ」や「教員が科目を担当する」といった関係をモデルに置きます。
主キーと識別子
各エンティティには 主キー と呼ばれる一意の識別子があります。主キーのおかげで同じ名前の生徒がいても、データを正しく区別できます。例として <span>生徒ID や 科目ID が主キーになることが多いです。
正規化とデータの整合性
データを整理する上での約束ごととして 正規化 があります。正規化はデータの重複を減らし、更新時の整合性を保つための考え方です。代表的な段階には 1NF、2NF、3NF があります。
| 段階 | 意味 |
|---|---|
| 1NF | すべての値は原子値で並ぶ |
| 2NF | 主キーの全体に依存する属性だけを持つ |
| 3NF | 非キー属性同士の依存を排除する |
実例で理解する
ここではシンプルな例として 生徒、科目、成績 の3つのエンティティを使います。次の表は エンティティ と 主な属性 の関係を示したものです。
| エンティティ | 主な属性 |
|---|---|
| 生徒 | 生徒ID、氏名、性別、生年月日 |
| 科目 | 科目ID、科目名、科目コード |
| 成績 | 生徒ID、科目ID、点数、評価 |
このように整理すると、後で「生徒がどの科目を履修しているか」「誰がどの科目をどの点数で取得したか」が簡単に結びつけて照会できます。なお 論理データモデル はこの後に出てくる 物理データモデル の元になります。物理データモデルでは実際にデータベースのテーブルやカラム、インデックスといった保存の仕組みを決めます。
実務で使うときの流れ
実務では以下の手順で進めると理解しやすくなります。まず要件をヒアリングして、どんな情報が必要かを洗い出します。次にエンティティと属性を棚卸しして関係を描きます。最後に正規化を進め、冗長性を減らして一貫性を保てる設計を作ります。設計が固まったら、これをベースに 物理データモデル を作成して実装へ進みます。
ポイントのまとめ
論理データモデル はデータの「何をどう表すか」を決める設計図です。エンティティ、属性、関係、主キー、正規化といった要素を組み合わせて、重複を減らし整合性を保つモデルを作ります。
論理データモデルの同意語
- 論理データスキーマ
- データの論理的な構造と制約を表すスキーマ。物理的な実装に依存せず、テーブル名・属性・型・制約等を定義した設計図。
- 論理スキーマ
- データの論理的な構造を示す設計のこと。実装の詳細に左右されず、ビジネス要件を反映したデータ配置を表す。
- リレーショナルデータモデル
- 関係(テーブル)と属性の組み合わせでデータを表現する、代表的な論理データモデル。多くのリレーショナルデータベースで基盤となる考え方。
- ERモデル
- エンティティとリレーションを用いてデータの実体と関係を表現する設計手法。論理設計の代表的な手法として使われることが多い。
- データモデル
- データの構造・意味・制約を抽象化した設計。論理データモデルの総称として使われることがある。
- 情報モデル
- データが表す概念の意味や関係を抽象化したモデル。論理データモデルと同様の目的で用いられることがある。
- データスキーマ
- データベースの論理設計を表す枠組み。属性・テーブル・関係・制約などを定義した設計情報。
- データベース設計の論理段階
- データの論理的構造を決定する設計段階。物理配置を決める前の段階で、論理データモデルと密接に結びつく。
- 論理データ設計
- データの論理的な構造を設計する作業や成果物。テーブル設計、キー、制約、関係などを物理配置を考慮せず定義する。
- 論理データ構造
- データの論理的な配列・関係を表す概念。データモデルの一部として用いられることがある。
- データスキーマ設計
- データベースの論理スキーマを設計・文書化する作業。テーブル構成や制約の定義を含む。
論理データモデルの対義語・反対語
- 物理データモデル
- データを実際のデータベース管理システム(DBMS)上でどう格納・実装するかを定義する設計。テーブル設計、カラム型、制約(NOT NULL、UNIQUE、外部キー)、インデックス、パーティショニングなど、ストレージとパフォーマンスを意識した要素が中心です。論理データモデルが意味と関係性の整理を重視するのに対して、物理データモデルは実装レベルの具体性を扱います。
- 概念データモデル
- 現実世界の事象や事実を高い抽象度で捉え、実体・属性・関係といった基本概念を定義するモデル。具体的なデータ型やDBMSの制約には踏み込みません。論理データモデルより抽象度が高く、全体像を共有する役割を持つ前段階の設計とされることが多いです。
- 階層データモデル
- データを木構造の階層(親子関係)で表現する古典的なデータモデル。上位ノードと下位ノードの階層的な連携を重視します。論理データモデルの一般的な関係表現とは異なる構造を持ち、現代のリレーショナルモデルとは対照的な表現形式として挙げられることがあります。
- ネットワークデータモデル
- データをノードとエッジのグラフとして表現する古典的なデータモデル。複数の親を持てるなど複雑な関係を柔軟に表現できます。論理データモデルの正規化・リレーション設計とは別のデータ表現思想に対する対比として用いられることがあります。
- 非構造化データモデル
- データの構造を厳密に定義しない、あるいはほとんど定義されていないデータの表現。自由形式の文書、動画、音声、画像などを扱うケースを想定します。論理データモデルのような整然としたテーブル構造と対照的な概念です。
- オブジェクト指向データモデル
- データとその振る舞い(メソッド)を一体化して扱う設計思想。データと動作を結びつけることで、現実のオブジェクトのような設計を目指します。論理データモデル(リレーショナル寄り)のアプローチとは異なる設計思想で、対比の例として挙げられます。
論理データモデルの共起語
- データモデル
- データの構造と関係を抽象的に表す設計概念。論理データモデルの土台になる考え方です。
- 概念データモデル
- ビジネス要件を高レベルで表現する、実装に依存しないデータモデルの第一段階。
- 論理データモデル
- エンティティ・属性・リレーションといった論理要素を用い、実装を意識せずデータの構造を設計する段階。
- ER図
- エンティティとリレーションを図示した表現で、論理設計を可視化する代表的な手法です。
- エンティティ
- データベースで表現される対象のカテゴリ。人・モノ・事象などを1つの集合として表す基本要素。
- 属性
- エンティティの特徴を表すデータ項目。例: 氏名、住所、価格。
- リレーション
- エンティティ間の関係性を示すリンク。1対1、1対多、多対多などのパターンがあります。
- 主キー
- 各レコードを一意に識別する属性または属性の組み合わせ。
- 候補キー
- 一意性を満たす複数のキー候補の中から選ばれるキー。
- 外部キー
- 他のテーブルの主キーを参照して、テーブル間の関連を作る属性。
- 正規化
- データの重複を減らし、更新異常を防ぐ設計手法。
- 正規形
- 正規化の段階を表す指標。第1正規形から第3正規形などが一般的です。
- カーディナリティ
- エンティティ間の関係の多さを表す指標(1対1、1対多、多対多)。
- ドメイン
- 属性が取り得る値の集合。意味づけされた値の範囲を定義します。
- 制約
- NOT NULL、UNIQUE、CHECKなど、データベースに課すルール。
- ユニークキー
- 値の重複を許さない一意性を保証するキー。
- データ辞書
- データ定義・型・制約など、データ資産のメタデータを記録する資料。
- スキーマ
- データベースの構造定義。テーブル名、関係、制約などの集合。
- DDL
- データ定義言語。テーブル作成・変更・削除などを行うSQLの機能。
- SQL
- データの検索・挿入・更新・削除を行う標準言語。論理設計を実装へ落とす際に使います。
- データベース設計
- 要件定義からデータ構造・制約・運用方針を決める全体的設計作業。
- 論理設計
- ビジネス要件をデータの論理構造へ落とし込む設計段階。
- 物理設計
- 実際のストレージ配置・インデックスなど、パフォーマンスを考慮した設計。
- 参照整合性
- 外部キーによってデータの整合性を保つ仕組み。
- ノーマライゼーション
- 正規化の実践的な方法論。データの重複を減らし更新を安全にします。
- データ整合性
- データが矛盾なく一貫している状態を維持すること。制約やトランザクションで保証します。
論理データモデルの関連用語
- 論理データモデル
- データベースの論理設計段階で、データの構造や関係を、DBMSの実装(テーブル名・カラム型)を意識せず表現する設計図。
- 概念データモデル
- 現実世界を抽象化した高レベルのモデル。エンティティとリレーションの大枠を示す設計概念です。
- 物理データモデル
- データベースの物理実装を表すモデル。テーブル構造・インデックス・ストレージの決定など、実装寄りの要素を含みます。
- エンティティ
- 現実世界の事物や概念を表す実体。データベースではテーブルの行の元となる対象です。
- 属性
- エンティティが持つ特徴を表すデータ項目。テーブルの列(カラム)に対応します。
- 主キー
- テーブル内のレコードを一意に識別する属性または属性の組み合わせです。
- 候補キー
- 主キーになり得る属性の集合。複数存在する場合があります。
- 自然キー
- 現実世界の意味を持ち、値自体で識別力があるキーのことです。
- サロゲートキー
- 意味を持たない人工的な識別子。データベース内部の識別用途に用います。
- 代替キー
- 主キー以外の候補キーのことです。
- 複合キー
- 複数の属性を組み合わせて一意性を保つキーです。
- 外部キー
- 別のテーブルの主キーを参照する属性。テーブル間の関連を表します。
- 複合属性
- 複数の要素を組み合わせて1つの属性として扱う属性です。
- 派生属性
- 他の属性を基に計算で得られる属性。実データとして格納するかは設計次第です。
- ドメイン
- 属性が取り得る値の意味的な集合を指します。
- 値域
- データ型・制約と合わせて、属性が取り得る具体的な値の範囲を示します。
- 正規化
- データの冗長性を減らすため、関連するデータを分割してテーブルを設計する手法です。
- 第1正規形(1NF)
- 属性が原子値のみを持ち、反復がない形を指します。
- 第2正規形(2NF)
- 1NFかつ、非キー属性が主キー全体に従属する形です。
- 第3正規形(3NF)
- 2NFかつ、非キー属性間の推移的従属性がない形です。
- ボイス-コッド正規形(BCNF)
- 候補キーだけに依存するように整理した正規形です。
- 参照整合性
- 外部キーが有効な参照を指すようにデータの整合性を保つ仕組みです。
- 外部キー制約
- 外部キーが参照先テーブルの主キーと一致することを保証する制約です。
- 参照制約
- テーブル間の参照関係を定義する制約全般を指します。
- 関係スキーマ
- 関係(テーブル)の属性名とその型・制約の集合を定義したものです。
- テーブル
- データを行と列で格納する、リレーショナルデータベースの基本単位です。
- リレーショナルデータベース
- 関係データモデルに基づき、テーブルを用いてデータを管理するデータベースです。
- 実体
- 現実世界の対象を表す概念。データベースではエンティティとして表現されます。
- 関係
- エンティティ間の意味的つながりを表します。1:N、N:M などのタイプがあります。
- エンティティタイプ
- 同種のエンティティの集合を示すカテゴリです。
- 属性タイプ
- 属性の性質を表すカテゴリ(文字列・整数・日付など)です。
- NULLの扱い
- 値が存在しない場合の特別な値。適切に扱う設計が重要です。
- デノーマライゼーション
- 性能向上・運用のため、正規化を緩和して冗長性を許容する設計手法です。
- マッピング
- 概念設計と論理設計・物理設計の間の対応づけを指します。
- スキーマ
- データベースの構造を定義する設計図です。
- データ辞書
- データ資産の意味・型・制約を記述したメタデータの集合です。
- データカタログ
- データ資産の所在・属性・品質・所有者を整理したカタログです。
- カーディナリティ
- 関係における関連エンティティの数の制約(1:1、1:N、N:M)を表します。
論理データモデルのおすすめ参考サイト
- 論理データモデルとは - 定義と描き方、メリットを紹介 - TIBCO
- 論理データモデルとは - 定義と描き方、メリットを紹介 - TIBCO
- データモデルとは? データマネジメント用語をわかりやすく解説
- 論理モデル、物理モデル、データモデルの違いを初心者向けに解説
- 概念モデル・論理モデル・物理モデルとは?【データモデル】 - Zenn
- 論理モデル、物理モデル、データモデルの違いを初心者向けに解説



















