数据库(Data Base,DB)
目录 |
数据库是指长期存储在计算机内有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
数据库是被长期存放在计算机内、有组织的、可以表现为多种形式的可共享的数据集合。这里“共享”是指数据库中的数据,可为多个不同的用户、使用多种不同的语言、为了不同的目的而同时存取数据库,甚至同一块数据也可以同时存取;“集合”是指某特定应用环境中的各种应用的数据及其数据之间的联系(联系也是一种数据)全部集中地按照一定的结构形式进行存储。
当前,数据库研究的范围有以下三个领域。
数据库管理系统(DBMS)是数据库系统的基础。DBMS的研制包括研制DBMS本身及以DBMS为核心的一组相互联系的软件系统。研制的目标是扩大功能、提高性能和提高用户的生产率。
数据库设计的主要任务是在DBMS的支持下,按照应用的要求,为某一部门或组织设计一个结构合理、使用方便、效率较高的数据库及其应用系统。其中主要的研究方向包括数据库设计方法、设计工具和设计理论的研究,数据模型和数据建模的研究,计算机辅助数据库设计方法及其软件系统的研究,数据库设计规范和标准的研究等。
数据库理论的研究主要集中于关系的规范化理论、关系数据理论等。近年来,随着人工智能与数据库理论的结合及并行计算机的发展,数据库逻辑演绎和知识推理、并行算法等理论研究,以及演绎数据库系统、知识库系统和数据仓库的研制都已成为新的研究方向。
与数据文件管理方式相比较,数据库管理有许多优越性。这些优越性来自数据库特有的数据结构和数据存储方式。归纳起来,数据库有如下优点。
(1)查询迅速、准确,且有多种表达与传输方式。以一个大型仓库管理为例:用手工操作,如要查找“某地区生产的商品的名称、规格、数量”,就可能要先翻阅账本,弄清分类目录和分类形式,然后按地区或商品分类、商品名称找到其他附带的属性,再抄写下来。如果要查找的内容较多,则查找与抄写既费时又费力。数据库系统能根据给定的条件自动地按一定途径以毫秒级速度进行扫描查找,可以在瞬间将符合要求的数据一一用表格或其他方式显示出来,还可以自动地打印出来或通过网络传输到指定地址,而且不会出现错误。
(2)数据结构化且统一管理。在数据库中,数据按逻辑结构组织起来,而按物理结构存放在磁介质中,并且由数据库管理系统统一管理,既考虑了数据本身的特点,也考虑了数据之间以及文件之间的联系,数据的查询、检索和处理很方便。在传统的文件系统中,尽管记录内部存在某种结构,但记录之间没有联系,数据的查询、检索和处理十分烦琐、困难。实现数据的整体结构化管理,是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。
(3)数据冗余度小。在文件系统中,为了满足一个应用程序对数据的需要,常常在不同地方重复存放同一个或同一组数据。这样一来,如果一个多处存放的数据出现错误,就必须同时修改几个地方,否则将造成数据之间的不一致性。在数据库系统中,数据不仅可以面向某个局部应用而且可以面向整体应用,从而大大减少数据冗余,节约了存储空间,有效地避免了数据之间的不一致性。
(4)具有较高的数据独立性。数据独立性是指用户应用程序与存储在数据库中数据的相互独立性。当人们利用应用程序调用数据库进行数据处理时,只涉及数据的逻辑结构,而不涉及其存储方式和物理结构。而当数据的物理存储方式和结构改变时,数据库管理系统将自动处理这种改变,而应用程序不必改变。近期甚至发展到数据库的逻辑结构改变了,用户程序也可以不变。用户程序不随数据逻辑结构改变而改变的特性,可称为数据的“逻辑独立性”。数据独立性(物理的和逻辑的)是数据库的重要特征和优点,它有利于在数据库结构修改时保持应用程序的稳定性,可以大大减少应用程序员的软件开发工作量。
(5)数据的共享性好。存放于数据库中的数据的共享性包括系统内部共享性和外部共享性两种,这是数据库管理方式区别于手工管理和文件管理方式的最本质的特征和优点。
系统内部的共享性是指同一个(组)数据在一次处理中可以多次被调用的性能,而系统外部的共享性是指同一个(组)数据可以同时供多个用户调用。这两种共享性的原理是一致的,它使得多种作业、多种语言、多种用户可以相互覆盖地使用数据集合。
内部共享性有效地降低了数据的冗余度,系统很容易进行维护和扩充,而且能够使应用程序的编写更加方便。系统外部共享性能够促进并实现信息社会化服务,可以充分发挥信息的价值。举一个简单的事例,在没有使用数据库技术时,火车票和飞机票发售的数据很难共享,常常出现有的售票处某线路车票或机票已售完,而另一售票处还有很多同一线路的车票或机票无人购买的情况。为了避免上述现象的出现,火车客运站和航空公司往往采取让不同售票处出售不同路线车票和机票的做法,结果给乘客带来许多不便。如今采用数据库来管理车票和机票发售工作,各个售票处可以互通有无,乘客不但可以在一个城市的任何售票处方便地查询并购买当地出发的某路线车票和机票,而且随着网络技术的发展,人们甚至可以在全国任一城市查询并购买异地出发的任一路线车票和机票。
一个数据库有4个主要成分:数据(data)、关系(relationship)、约束(constraint)和模式(schema)(见下图)。数据是所存储的逻辑实体在计算机中的二进制表示;关系表示数据项之间的某种对应;约束是定义正确数据状态的语言;模式描述数据库中数据的组织和联系。