首页 理论教育分布式数据库技术与系统

分布式数据库技术与系统

【摘要】:数据库在建立、运行和维护时,由数据库管理系统统一管理和统一控制。数据库管理系统可以使用户方便地定义数据和操纵数据,并能够保证数据的安全性和完整性、多用户对数据的并发使用及发生故障后的系统恢复。完整性规则是给定的数据及其联系所具有的制约和存储规则,用以限定符合数据库状态及状态的变化,以保证数据的正确性、有效性和相容性。同时,程序与现有存取结构的联系过于密切,也大大降低了数据的独立性。

数据库(database)这个词汇的诞生和发展在很大程度上反映了这种技术(数据库技术)的发展。与计算机科学技术中的许多词汇一样,database是一个由人工创造出来的词汇。

如大家所知,自计算机诞生以来,计算机应用领域基本上可以分为科学计算、自动控制和数据处理三个方面。随着数据处理在应用中扮演的角色越来越重要,数据管理成了一个重要问题。最初,作为计算机系统基础支撑的操作系统,其对数据管理的支持很简单。由于数据处理的需求扩大,操作系统也开始提供必要的数据管理功能。典型的如IBM公司在20世纪中叶开始在其操作系统中提供基础文件结构和相关操作支持,如顺序存取方法(sequential access method,SAM)、索引顺序存取方法(indexed sequential access method,ISAM)和虚拟存储存取方法(virtual storage access method,VSAM)等。

形势发展之快难以想象。很快发现,这些还不能满足需求,因此,具有独立文件管理功能的文件系统诞生了。

文件系统是一个进步,但是数据的冗余性和不一致性等问题还是困扰着聚焦数据处理的用户。能否研制开发一个满足需求的数据管理系统,具有较少的数据冗余性,保证数据的一致性和完整性,能够为不同的用户共享和使用呢?这样,数据库的概念就诞生了。那时取什么名字尚未确定,因此产生了data bank和data base等不同的名称。后来,data base为大家所接受,最后,data和base紧密连到一起,database成了专用名词。

随之,以下几个概念得到了确定。

1.数据

数据(data)是指用于描述事物的符号记录。例如,文字、数值、图形、图像、声音、学生的档案记录、货物的运输情况等,都是数据。

2.数据库

数据库(database,DB)是指长期存储在计算机内的有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。

3.数据库管理系统

数据库管理系统(database management system,DBMS)是指位于用户与操作系统之间的一层数据管理软件。数据库在建立、运行和维护时,由数据库管理系统统一管理和统一控制。数据库管理系统可以使用户方便地定义数据和操纵数据,并能够保证数据的安全性和完整性、多用户对数据的并发使用及发生故障后的系统恢复。(www.chuimin.cn)

4.数据库系统

数据库系统(database system,DBS)是指在计算机系统中引入数据库后构成的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。

5.数据模型

数据模型用来描述数据库的用户或应用程序关于数据的观点,以确立相应的数据结构,规定允许施加给这类数据的运算和约束条件。数据模型由三个要素组成:数据结构、数据操作和数据的约束条件。

(1)数据结构:用来描述系统的静态特性,是指相互之间存在一种或多种特定关系的数据元素的集合。常用的数据模型按其数据结构可分为层次模型、网状模型和关系模型三类。

(2)数据操作:用来描述系统的动态特性,是指允许对数据库中各种对象的实例执行操作的集合。

(3)数据的约束条件:数据的约束条件是一个完整性规则的集合。完整性规则是给定的数据及其联系所具有的制约和存储规则,用以限定符合数据库状态及状态的变化,以保证数据的正确性、有效性和相容性

已经提出的、普遍适用的常用数据模型主要有关系模型、层次模型、网状模型三类。

当表示信息时,关系模型只使用数据记录的内容,而层次模型和网状模型要用到数据记录间的“联系”以及它们在存取结构中的布局。因此,对于层次模型和网状模型来说,数据处理只能是过程型的,程序员的形象类似导航员,他/她要在自己的程序中充分利用现有存取结构的知识逐个记录(一次一个记录)存取数据。在层次和网状这两种数据模型中,数据的应用形态与存取形态混合在一起。由于存取形态不得不面向应用,这样就肯定会忽视某些应用,从而破坏数据的中立性。同时,程序与现有存取结构的联系过于密切,也大大降低了数据的独立性。关系模型则不问存取形态,即不要求用户了解数据记录的联系及顺序,它向所有应用提供一个简单、中性的应用形态。而且,由于全部信息都由数据内容表示,因此,原则上运算是非导航式的。从而,关系模型成了当前的主流。