当前位置:首页 > 经典书库 > 工程师手册

数据库与文件的关系

书籍:工程师手册

出处:按学科分类—工业技术 企业管理出版社《工程师手册》第912页(1528字)

数据库是在文件系统的基础上发展起来,是以实现数据共享为目标的文件的集合。也就是说,数据库是由文件组成,文件是数据库的基础。从完成基本任务的角度来看,数据库和文件系统没有什么本质的区别,它们都被用来存储、管理数据,并执行用户所需要的各种数据操作。但是和文件系统相比,数据库系统有更高的目标要求。

图5.1.3-1给出了文件系统和数据库系统的工作模式示意图。这个示意图虽然比较简单粗略,但是比较直观,能够说明一定的问题。

(a)文件系统工作模式

(b)数据库系统工作模式

图5.1.3-1 文件系统和数据库系统工作模式

和文件系统相比,数据库系统具有以下几方面优点:

1.数据库系统具有最小的数据冗余度(Redanduncy) 早期的文件系统是根据用户的应用需要而各自建立的,其基本特点是某些文件只是为某些特定的用户设计的,不同的应用程序所需要使用的数据即使有许多部分是相同的,他们也必须建立各自的文件,因而在文件系统中存在着大量的数据冗余度。文件系统不能很好地实现数据共享。这是文件系统存在的主要问题。

数据冗余度会带来一系列不良后果,不仅浪费大量的存储空间,而且还会给数据的修改带来很大的困难,很容易造成数据的不一致性,从而大大地降低了数据的正确性。

一个理想的数据库系统应该是无冗余度的系统。完全做到无数据冗余度实际上是不可能的,也是不现实的。在实际应用中,往往因为某种原因而使数据库系统有意地保留一定的数据冗余度,这种冗余度被称作受控冗余度。

在设计数据库系统时,力求使数据冗余度最小,这是数据库系统设计追求的目的之一。

2.数据库系统具有较大的数据独立性在文件系统中一个被用来进行文件操作的用户应用程序通常由二部分组成:第一部分是文件记录格式的说明;第二部分是应用程序的主体程序。这两部分互相联系,组成一个有机的整体。程序主体执行的结果,完全建立在数据结构说明的基础之上。如果数据物理结构或数据逻辑结构需要修改,其程序主体也必须随之作相应的改变,反之亦然。这就是说,文件系统缺乏数据独立性。

数据和应用程序之间的这种过分依赖关系,给数据的修改、系统的进一步扩充、存储设备的替换更新都带来极大的困难。因为一旦需要修改数据结构,那么用户的应用程序也必须作相应的修改。反之亦然。

一个理想的数据库系统应该是,用户应用程序和数据库结构是完全独立的,互不牵扯、互不依赖。但要完全实现数据独立性,必然要使数据管理系统的设计变得十分复杂,使数据库系统设计费用增加。因此,实际数据库系统往往具有不同程度的数据独立性。

3.数据库系统为用户提供对数据的存储、管理、操作和控制的统一的有效手段,使得用户应用程序的程序设计变得十分简单,从而大大方便了用户的使用。

同时,数据库系统还对数据的安全性、保密性、数据的完整性、故障恢复等,提供了统一、有效的管理手段,从而大大地提高了数据的实用价值。

分享到: