首页 理论教育数据管理技术的发展-信息系统与数据库技术

数据管理技术的发展-信息系统与数据库技术

【摘要】:图1-2文件系统阶段应用程序与数据之间的对应关系文件系统化阶段数据管理的特点①程序与数据分开存储,数据以“文件”形式可长期保存在外部存储器上,并可对其进行多次查询、修改、插入和删除等操作。②有专门的文件系统进行数据管理,程序和数据之间通过文件系统提供的存取方法进行转换。文件系统阶段数据管理的缺点虽然这一阶段较人工管理阶段数据管理有了很大的改进,但仍有很多缺点。

从数据本身来讲,数据管理是指收集数据、组织数据、存储数据和维护数据等几个方面。随着计算机硬件和软件技术的发展,计算机数据管理技术也在不断改进,大致经历了3个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。

1)人工管理阶段

20世纪50年代中期以前,计算机主要用于科学计算,数据量较少,一般不需要长期保存。硬件方面,外部存储器只有卡片、磁带和纸带,还没有磁盘等可以直接存取的存储设备;软件方面,没有专门管理数据的软件,数据处理方式基本是批处理。此阶段数据与应用程序之间的关系是一一对应的关系。

图1-1 人工管理阶段应用程序与数据之间的关系

这一阶段数据管理的特点如下:

(1)数据面向具体应用,不共享

一组数据只能对应一组应用程序,如果数据的类型、格式或者数据的存取方法、输入/输出方式等改变了,程序必须做相应的修改。这使得数据不能共享,即使两个应用程序涉及某些相同的数据,也必须各自定义,无法互相利用。因此,程序与程序之间存在大量的冗余。

(2)数据不单独保存

由于应用程序与数据之间结合的非常紧密,每处理一批数据,都要特地为这批数据编制相应的应用程序。数据只为本程序所使用,无法被其他应用程序利用。因此,程序的数据均不能单独保存。

(3)没有软件系统对数据进行管理

数据管理任务,包括数据存储结构、存取方法、输入/输出方式等,这些完全由程序开发人员负责,没有专门的软件加以管理。一旦数据发生改变,就必须修改程序,这就给应用程序开发人员增加了很大的负担。

这个阶段只有程序的概念,没有文件的概念。数据的组织方式必须由程序员自行设计。

2)文件系统阶段

20世纪50年代后期至60年代中后期,计算机已不仅用于科学计算,还用于信息管理。硬件方面,有了磁盘、磁鼓等直接存取的外部存储设备;软件方面,操作系统中已经有了专门的管理外存储的数据软件,一般称为文件系统。数据处理方式不仅有批处理,还有联机实时处理。此阶段数据与应用程序之间的关系如图1-2所示。

图1-2 文件系统阶段应用程序与数据之间的对应关系

(1)文件系统化阶段数据管理的特点

①程序与数据分开存储,数据以“文件”形式可长期保存在外部存储器上,并可对其进行多次查询、修改、插入和删除等操作。

②有专门的文件系统进行数据管理,程序和数据之间通过文件系统提供的存取方法进行转换。因此程序和数据之间具有一定的独立性,程序访问数据只需知道文件名,不必关心数据的物理位置。数据的存取以记录为单位,并出现了多种文件组织形式,如索引文件、随机文件和直接存取文件等。

③数据不只对应某个应用程序,可以存取,可以被重复使用。但程序还是基于特定的物理结构和存取方法,因此数据结构与程序之间的依赖关系仍然存在。

(2)文件系统阶段数据管理的缺点

虽然这一阶段较人工管理阶段数据管理有了很大的改进,但仍有很多缺点。(www.chuimin.cn)

①数据冗余度大:文件系统中数据文件结构的设计仍然对应于某个应用程序,也就是说,数据还是面向应用的。当不同的应用程序所需要的数据有部分相同的,也必须建立各自的文件,不能共享数据。

②数据独立性差:文件系统中数据文件是为某一特定要求设计的,数据与程序相互依赖。如果改变数据的逻辑结构或文件的组织形式,必须修改相应的应用程序;而改变应用程序,比如说改变应用程序的编程语言,也必须修改数据文件的结构。

因此,文件系统是一个不具有弹性的、无结构的数据集合,即文件之间是独立的,不能反映现实世界事务之间的内在联系。

3)数据库系统阶段

20世纪60年代后期以来,计算机用于管理的范围越来越广泛,数据量也急剧增加。硬件技术方面,开始出现了容量大、价格低廉的磁盘。软件技术方面,操作系统更加成熟,程序设计语言的功能更加强大。在数据处理方式上,联机实时处理要求更多,还出现了分布式数据处理方式,用于解决多用户、多应用共享数据的要求。在这样的背景下,数据库技术应运而生,它是主要解决数据的专门软件系统,即数据库管理系统。数据库管理系统阶段应用程序与数据之间的对应关系如图1-3所示。

图1-3 数据库系统阶段应用程序与数据之间的对应关系

数据库系统阶段的数据管理具有以下特点:

(1)数据结构化

数据结构化是数据库与文件系统的根本区别,是数据库系统的主要特征之一。传统文件的最简单形式是等长、同格式的记录集合。在文件系统中,相互独立的文件的记录内部是有结构的,类似于属性之间的联系,而记录之间是没有结构的、孤立的。例如,有3个文件:学生(学号、姓名、年龄、性别、出生日期、专业、住址)、课程(课程号、课程名称、授课教师)、成绩(学号、课程号、成绩)。要想查找某人选修的全部课程的课程名称和对应成绩,则必须编写一段很不简单的程序来实现。

数据库系统采用数据模型来表示复杂的数据结构,数据模型不仅表示数据本身的联系,而且表示数据之间的联系。只要定义好数据模型,上述问题可以非常容易地联机查到。

(2)数据的冗余度低、共享性高、易扩充

数据库系统从整体角度看待和描述数据,数据不再面向某个应用而是面向整个系统,因此一个数据可以被多个用户、多个应用共享使用。这样可以大大减少数据冗余,提高共享性,节约存储空间。数据共享还能够避免数据之间的不相容性与不一致性。

数据的不一致性是指同一数据不同复制的值不一样。采用人工管理或文件系统管理时,由于数据可以被重复存储,当不同的应用使用和修改不同的复制时就很容易造成数据的不一致。在数据库中,数据共享减少了由于数据冗余造成的不一致现象。

由于数据面向整个系统,是有结构的,因此不但可以被多个应用共享使用,而且容易增加新的应用,这就使得数据库系统弹性大,易于扩充,可以适应各种用户的要求。

(3)数据独立性高

数据独立性包括数据的物理独立性和数据的逻辑独立性。物理独立性是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的。也就是说,数据在磁盘上的数据库中怎样存储是由数据库管理系统负责管理的,应用程序不需要了解,应用程序要处理的只是数据的逻辑结构。这样当数据的物理结构改变时,不会影响数据的逻辑结构和应用程序,这就保证了数据的独立性。

而数据的逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,即当数据的逻辑结构改变了,应用程序也可以保持不变。

(4)数据由数据库管理系统统一管理和控制

数据库系统的共享是并发的共享,即多个用户可以同时存取数据库中的数据。这个阶段的程序和数据的联系是通过数据库管理系统(DBMS)来实现。数据库管理系统必须为用户提供存储、检索、更新数据的手段,实现数据库的并发控制,实现数据库的恢复,保证数据完整性和保障数据安全性控制。