下面是层次数据模型的优点

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

下面是层次数据模型的优点:

简单:由于数据库基于层次结构,所以各层之间的联系逻辑上(或概念上)简单并且层次数据库的设计也简单。

数据共享:因为所有数据都保存在公共数据库里,所以数据共享成为现实。

数据安全:层次模型是第一个由DBMS提供和强制数据安全的数据库模型。

数据独立性:DBMS提供了保持数据独立性的环境,这充分地降低了编程的难度,减少了对程序的维护工作量。

数据完整性:给定双亲/子女联系,在双亲段和它的子女段之间存在链接。由于子女段是自动地引用它的双亲,所以这种模式保证了数据完整性。

高效率:当数据库包含大量一对多(1∶m)联系的数据并且用户在大量事务中所使用的数据的联系固定时,层次数据模型是非常高效率的。

可用的技术:由于已有许多大型计算机技术基础,因此经验丰富的编程人员可以加以有效利用。

可靠的商业应用程序:在主机环境内部存在大量可靠的商业应用程序。

2.层次数据模型的缺点

实现复杂:虽然层次数据库概念简单、容易设计而且没有数据依赖性问题,但实现起来特别复杂。DBMS要求数据存储的物理级知识,数据库设计者必须要具备一定的物理数据存储特性的知识。数据库结构的任何变化(例如段位置的改变),都要求所有访问数据库的应用程序随之改变。因此,数据库设计的实现变得非常复杂。

不灵活:层次数据库缺乏灵活性。新的联系或段的改变通常会带来非常复杂的系统管理任务。一个段的删除可能会造成对其下面的所有段的无意识删除。这样一个错误会造成较大的损失。

数据库管理问题:如果改变了层次数据库的数据库结构,那么必须修改所有访问数据库的应用程序。这样,维护数据库和应用程序变得非常困难。

缺乏结构独立性:结构独立性是指数据库的结构发生改变而不会影响DBMS访问数据的能力。层次数据库被称为导航式系统,这是因为数据访问要求使用前序遍历(一种物理存储路径)导航到适合的段。因此,应用程序员应该掌握从数据库访问数据的相关访问路径。物

理结构的修改或变化会导致应用程序出现问题,这就要求必须修改应用程序。因此,在层次数据库系统中由于结构依赖使得数据独立性的好处是有限的。

应用程序编写复杂:编写应用程序非常费时和复杂。由于结构依赖和导航式的结构,应用程序编程人员和终端用户必须准确地知道数据库中数据的物理描述以及如何编写访问数据的线性控制代码。这要求具有复杂指针系统的知识,而只有很少或没有编程技术的普通用户通常是很难掌握这一知识的。

实现的限制:许多普通的联系并不适合于层次数据模型所要求的一对多联系。例如,在大学注册的学生可以选修多门课程,并且每门课程可由多个学生选修。在现实世界中这样普通的多对多(n∶m)联系在层次数据模型中都很难实现。

没有标准:在层次数据模型里,没有精确的标准概念集,也没有明确指定模型执行的特定标准

问:试述网状、层次数据库的优缺点?

答:

网状数据模型的优点主要有:

(1)能够更为直接地描述现实世界,如一个结点可以有多个双亲。

(2)具有良好的性能,存取效率较高。

网状数据模型的缺点主要有:

(1)结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握。

(2)其数据定义语言(DDL)、数据操作语言(DML)复杂,用户不容易使用。

(3)数据独立性较差。由于记录之间联系是通过存取路径实现的,应用程序在访问数据时必须选择适当的存取路径,因此,用户必须了解系统结构的细节,加重了编写应用程序的负担。从而影响数据独立性。

层次模型的优点主要有:

(1)层次数据模型本身比较简单,层次分明,便于在计算机内实现。

(2)在层次数据结构中,从根结点到树中任一结点均存在一条唯一的层次路径,为有效地进行数据操纵提供条件。

(3)由于层次结构规定除根结点外所有结点有且仅有一个双亲,故实体集之间的联系可用双亲结点唯一地表示,并且层次模型中的基本层次联系总是从双亲记录指向子女记录,所以记录类型之间的联系名可省略。由于实体集间的联系固定,所以层次模型DBMS 对层次结构的数据有较高的处理效率。

(4)层次数据模型提供了良好的完整性支持。

(5)实体间联系是固定的,且预先定义好的应用系统,采用层次模型来实现,其性能优于

关系模型,不低于网状模型。

可见用层次模型对具有一对多的层次关系的部门描述非常自然、直观,容易理解。这是层次数据库的突出优点。

层次模型的缺点主要有:

(1)现实世界中很多联系是非层次性的,如多对多联系、一个结点具有多个双亲等,层次模型表示这类联系的方法很笨拙,只能通过引入冗余数据(易产生不一致性)或创建非自然的数据组织(引入虚拟结点)来解决。

(2)对插入和删除操作的限制比较多。

(3)查询子女结点必须通过双亲结点。

(4)由于结构严密,层次命令趋于程序化。

数据库系统三级模式结构的优点

三级模式结构分别是外模式、概念模式和内模式优点:减少冗余

相关文档
最新文档