IRIS 是什么类型的数据库

IRIS 出现的时间要比关系数据库早。

IRIS 所以不是关系数据库,而是层级数据库(Hierarchical Database)。

有时候,我们也把这个数据库叫做分层数据库。

例如我们在用户管理用得比较多的 LDAP (Lightweight Directory Access Protocol) 也是层级数据库。

层级数据库

分层数据库系统结构由IBM在1960年代初期开发。

在这种类型的数据库中,数据存储在父子关系节点中。 此外,记录不仅包含其数据,还包含其父母和子女的数据。

顾名思义,“层次结构”是一种树状结构。 每个记录之间都有链接,作为父子关系。

数据以字段集合的形式存储,其中每个字段仅包含一个值,即,每个单独的记录只有一个父对象,并且一个父对象可以有一个或多个孩子。

要检索数据,我们需要遍历每棵树,直到获得所需的数据。

由于父母与孩子一对多的关系,它很简单但又不灵活。 它们主要用于银行和电信行业,以构建高性能和管理应用程序。

层级数据库优势

分层数据库的优点是它是两面的,并且由于记录的树状结构而可以被快速检索,操作或更改,并且还可以预先定义记录之间的关系。

层级数据库缺点

分层数据库的缺点是,在这种类型的数据库结构中,即使从逻辑的观点出发,每个节点只能有一个父节点,而子节点之间则没有关系或链接。

为了在数据库中添加记录或数据,需要重新定义整个数据库。

因数据库的类型导致的 EPIC 系统问题

正是因为 EPIC 系统使用了分层数据库,那么对 EPIC 系统来说的问题就是在于一些分层数据库的缺陷了。

比如说 EPIC 的复杂逻辑表达能力通常比较多,对一些有关联的查询什么通常没有办法快速处理。

Index 重建索引时间长,有时候 Index 重建索引可能要用掉 1 周以上的时间。所以 EPIC 说最好要他们的技术人员在场的时候才进行索引重建。

表达复杂逻辑有点力不从心,对一些比较复杂的逻辑表达比较困难。

对数据插入的时候锁表,锁记录的情况经常发生,并且可能会导致整个数据库的崩溃和无法提供服务。

当然也有优势,那么通常的优势就是检索速度快,关联查询效率比较高。