頻出中 ⏱ 6分★★★☆☆

データモデル

階層型・ネットワーク型・関係型と関係代数を完全整理

データモデルは、現実のデータ構造を形式的に表現するための概念的な枠組み。DB設計の土台となり、試験ではモデルの種類と特徴の比較が頻出。

主要データモデル比較表
モデル構造代表DBMS特徴・試験ポイント
階層型木構造(親子の1対多)IMS(IBM)親ノードから子へのパスが1本のみ。多対多不可。
ネットワーク型グラフ構造(ポインタで接続)CODASYL準拠多対多を直接表現可能。ポインタが複雑になる。
関係型(リレーショナル)2次元表(テーブル)Oracle, MySQL, PostgreSQL集合演算・SQL による柔軟な問い合わせ。現在の主流。
「第三世代DBMS」と呼ばれるオブジェクト関係型や NoSQL もあるが、試験の中心は関係型。
関係モデルの用語対応
関係モデル用語SQLでの呼び方
関係(リレーション)テーブル
タプル行(レコード)
属性列(カラム)
ドメインデータ型+制約

関係モデルでは集合演算関係固有演算を組み合わせてデータを操作する。SQLのSELECT文はこれらの演算を表現している。

演算SQL対応説明
選択(σ)WHERE句条件を満たす行を抽出
射影(π)SELECT列リスト特定の列のみ取り出す
結合(⋈)JOIN共通属性で2テーブルを接合
和(∪)UNION2つの関係の和集合
差(−)EXCEPT一方にしかない行
積(×)CROSS JOIN直積(全組み合わせ)
種類データ構造用途例
キー・バリュー型KVペアセッション管理、キャッシュ(Redis)
ドキュメント型JSON/BSONコンテンツ管理(MongoDB)
カラム型列ファミリー大規模分析(Cassandra)
グラフ型ノード・エッジSNS・推薦エンジン(Neo4j)
DB試験の本題は関係型。NoSQLは補足知識として押さえる程度でよい。

📝 理解度チェック

関係モデルにおいて「濃度(カーディナリティ)」が表すものはどれか?
関係代数の「射影(π)」に対応するSQL構文はどれか?
階層型データモデルでは表現が困難な関係はどれか?

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