分层数据模型

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

  • 它包含由分支连接的节点。
  • 最上面的节点被称为根节点。
  • 如果有多个节点出现在顶层,那么这些节点可以被称为根段。
  • 每个节点正好有一个父节点。
  • 一个父节点可能有许多子节点。

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

关系型数据模型

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

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

分层数据模型和关系数据模型之间的区别 –

编号 分层数据模型 关系数据模型
1 在这个模型中,使用分层方法来存储数据。这是最古老的方法。 关系数据模型是最灵活和有效的数据库模型。它是当今最常用的数据库。
2 分层数据模型实现了1:1和1:n。 除了1:1和1:n之外,关系数据模型还实现了多对多的关系。
3 为了组织记录,分层数据模型使用树状结构。 为了组织记录,关系数据模型使用了一个表。
4 复杂性的机会更多。 关系数据模型没有复杂的机会。
5 缺乏声明性的查询设施。在当前时代,他们正在使用NoSQL建模。 关系数据模型提供了使用SQL的声明式查询设施。
6 记录是在指针的帮助下连接的。 记录在行和列的帮助下被连接。
7 在这个模型中存在插入异常,即没有父节点,子节点不能被插入。 关系数据模型不存在插入异常现象。
8 分层数据模型中存在删除异常,即很难删除父节点。 关系数据模型不存在删除异常现象。
9 分层数据模型被用于访问复杂和不对称的数据。 关系数据模型用于访问复杂和对称的数据。
10 分层数据模型缺乏数据独立性。 关系数据模型提供数据独立性。
11 分层数据模型设计在现代被用于更快地访问数据。这是通过交易获得的,即在层次(父母对子女)相对较少的情况下放弃冗余。 由于多对多的关系连接对多参数查询的搜索产生了很大的影响。
12 复杂性导致了数据库设计的困难。 关系数据模型并不复杂,因为用户看不到物理层面的细节。
13 由于一个子记录有多个实例,在更新记录时有不一致的问题。 在更新记录时,规范化被用来消除冗余。
14 目前这个模型被用于购物车和搜索引擎。有一些工具可以模拟分层数据库,例如:Mongodb, firebase 大多数传统软件使用关系数据库,例如:Oracle dB, MS sql server, IBM DB2。