分层数据模型

分层数据模型是最古老的数据模型类型。它是由IBM在1968年开发的。它将数据组织成树状结构。层次结构模型包括以下内容 –

  • 它包含由分支连接的节点。
  • 最上面的节点被称为根节点。

如果有多个节点出现在顶层,那么这些节点就可以被称为根段。

  • 每个节点正好有一个父节点。
  • 一个父节点可能有许多子节点。

分层数据模型

在上图中,电子产品是根节点,它有两个子节点,即电视机和便携式电子产品。这两个节点有更多的子节点,它们作为父节点。例如。电视机的子节点是电子管、LCD和等离子体,对于这三个节点来说,电视是父节点。它遵循一对多的关系。

网络数据模型

它是分层数据模型的高级版本。为了组织数据,它使用有向图而不是树状结构。在这个模型中,孩子可以有一个以上的父母。它使用两个数据结构的概念,即记录和集合。

网络数据模型

在上图中,项目是根节点,有两个子节点,即项目1和项目2。项目1有3个孩子,项目2有2个孩子。总共有5个子节点,即部门A、部门B和部门C,它们是网络相关的子节点,因为我们说过,这个模型可以有一个以上的父节点。因此,部门B和部门C有两个父母,即项目1和项目2。

关系型数据模型

关系数据模型是由E.F. Codd在1970年开发的。没有像分层数据模型那样的物理链接。以下是关系型数据模型的属性:

  • 数据只以表的形式表示。
  • 关系型数据模型只处理数据,不处理物理结构。
  • 关系型数据模型提供关于元数据的信息。
  • 在行和列的交叉点上,只有一个元组的值。
  • 关系型数据模型提供了一种轻松处理查询的方法。

关系型数据模型

层次型、网络型和关系型数据模型之间的区别。

编号 分层数据模型 网络数据模型 关系数据模型
1 在这个模型中,使用分层方法来存储数据。这是最古老的方法,现在已经不使用了。 网络数据模型它通过链接或指针将记录组织在一起。 关系数据模型以表的形式组织记录,表之间的关系使用共同的字段设置。
2 为了组织记录,分层数据模型使用树状结构。 网络数据模型以有向图的形式组织记录。 关系数据模型以表的形式组织记录。
3 分层数据模型实现了1:1和1:n的关系。 除了1:1和1:n之外,网络数据模型还实现了多对多的关系。 除了1:1和1:n,关系数据模型还实现了多对多的关系。
4 指针是用来建立记录之间的物理关系。 链接列表用于建立记录之间的物理关系。 逻辑表示法是用行和列来描述记录之间的关系。
5 在这个模型中存在插入异常,即没有父节点就不能插入子节点。 网络数据模型没有插入异常现象。 关系数据模型没有插入异常现象。
6 在这个模型中存在删除异常,即很难删除父节点。 网络数据模型不存在删除异常现象。 关系数据模型没有删除异常现象。
7 更新导致不一致问题,因为一个子记录存在多个实例。 没有这样的问题,因为只有一个记录的实例存在。 通过规范化过程,更新记录是很容易和简单的,多余的数据被删除。
8 分层数据模型缺乏数据独立性。 网络数据模型有部分数据独立性。 关系数据模型提供了数据独立性。
9 分层数据模型不支持查询数据库的这种设施。 网络数据模型不支持查询数据库的这种设施。 关系数据模型支持基于SQL的声明式查询。
10 用于访问复杂和不对称的数据。 网络数据模型用于访问复杂和对称的数据。 关系数据模型用于访问复杂和对称的数据。
11 由于其复杂性,很难设计数据库。 由于数据库的复杂性,设计数据库和操作数据库很困难。因此,它给程序员带来了负担。 由于对终端用户隐藏了物理层面的细节,所以很容易理解。
12 分层数据模型的灵活性较差。 与分层模型相比,网络数据模型很灵活。 与分层模型相比,关系数据模型很灵活。
13 XML和XAML使用这个模型。 VAX-DBMS、UNIVAC的DMS-1100和SUPRADBMS使用这种模式。 关系数据模型主要用于现实世界的应用中。Oracle,SQL。