ネットワーク型
データモデルは、データベースにおけるデータの構造を表現する手法の一つであり、オブジェクト間の複雑な関係を柔軟に記述できる点が特徴です。このモデルは、1960年代後半に
チャールズ・バックマンによって提唱され、
1969年には
CODASYL(Conference on Data Systems Languages)によって標準規格として定められました。
階層型モデルとの違い
従来の階層型
データモデルでは、データは親子関係のような木構造で表現され、一つのレコードは一つの親レコードと複数の子レコードを持つという制約がありました。しかし、ネットワーク型
データモデルでは、各レコードが複数の親レコードと複数の子レコードを持つことができ、より複雑なラティス構造を形成することが可能です。
メリットとデメリット
ネットワーク型
データモデルの最大の利点は、階層型モデルと比較して、現実世界のエンティティ間の関係をより自然に表現できることです。たとえば、学生が複数のコースを履修し、一つのコースに複数の学生が所属するといった多対多の関係を直接的に表現できます。しかし、ネットワーク型
データモデルは、以下の2つの理由から、広く普及するには至りませんでした。
1.
IBMの階層型モデルへの固執: IBMが
IMSやDL/Iといった既存の製品で階層型モデルを採用し続けたため、ネットワーク型モデルの普及が阻害されました。
2.
関係モデルの台頭: 関係モデルは、より高度な宣言的インターフェースを提供し、データ操作が容易なため、ネットワーク型モデルは次第にその地位を失いました。
ナビゲーショナルデータベース
1980年代初頭まで、階層型やネットワーク型の
データモデルを用いたナビゲーショナルデータベースは、パフォーマンスの面で有利でした。そのため、大規模なアプリケーションでは依然として使用されていましたが、ハードウェア性能の向上により、
関係モデルの生産性と柔軟性が優位になり、ネットワーク型モデルは企業の利用が減少しました。
ハイパーリンクとの類似性
ネットワーク型
データモデルのナビゲーショナルなインターフェースは、
インターネットや
World Wide Webで一般的に利用されているハイパーリンクベースのモデルと類似している点もあります。しかし、ネットワーク型
データモデルはデータベース全体が集中管理されていることを前提としており、分散環境や異機種混在環境には対応していません。
歴史
1969年に
CODASYLによってネットワーク型データベースモデルの最初の規格が策定されました。
1971年には第二版が登場し、これが多くの実装の基盤となりました。1980年代初頭まで、このような流れが継続しましたが、最終的にISO(
国際標準化機構)が規格を策定したものの、これは製品にはほとんど採用されませんでした。
まとめ
ネットワーク型
データモデルは、柔軟なデータ表現が可能であったものの、
関係モデルの台頭によって、その利用は減少しました。しかし、複雑なデータ構造を扱う上での基礎となる概念を提供した点において、データベース技術の歴史において重要な役割を果たしました。
関連情報
関連項目
CODASYL
ナビゲーショナルデータベース
参考文献
チャールズ・バックマン, The Programmer as Navigator. チューリング賞講演, Communications of the ACM, Volume 16, Issue 11, 1973, pp.653–658, ISSN 0001-0782, doi:10.1145/355611.362534
外部リンク
Network (CODASYL) Data Model