7.1 数据库技术的发展

7.1 数据库技术的发展

7.1.1概述

数据库技术产生于20世纪60年代中期,到目前已经历了3代演变,发展了以数据建模和DBMS核心技术为主,内容丰富的一门学科,带动了一个巨大的软件产业——DBMS产品及其相关工具的发展。

数据库技术是计算机科学技术中发展最快的领域之一,也是应用最广泛的技术之一,目前它已成为计算机信息系统与应用系统的核心技术和重要基础。

数据模型是数据库系统的核心和基础。按照数据模型的进展,数据库技术可以相应地分成3个阶段,即第一代的网状、层次数据库系统,第二代的关系数据库系统,以及发展到今天以第三代数据库系统为核心的数据库大家族。数据库技术与网络通信技术、人工智能技术、面向对象程序设计技术、并行计算技术等互相渗透,互相结合,成为当前数据库技术发展的主要特征。

现代应用促使数据库技术得到了飞速的发展,具体表现在以下几点:

(1)更强大的数据建模能力:数据模型是帮助人们研究设计具有静态与动态特性及完整性约束条件的一类集合。

(2)更加完善的体系结构:针对不同的应用特征和要求,人们开发了不同的数据库系统的体系结构。这些体系结构种类繁多,但都遵循一定的模式:“相关技术”+“数据库技术”。

(3)更加强大的查询功能:关于数据查询的发展,主要集中在两个方面。一是对查询功能的扩充,通过特定的查询语言,可以查询超媒体信息。此外,也形成了一系列的查询技术,如:实时查询技术、关联查询技术、时间索引技术等。二是查询策略的优化,如:语义查询优化、时间查询优化、整体查询优化等。

(4)更加强大的数据存储与共享能力:随着现代应用数据复杂性的递增,数据存储技术日趋完善,除了可存储各种基本类型的数据外,还可存储不同于传统含义的数据,如:过程、规则、事件及控制信息;不仅可以存储传统的结构化的数据,还可以是非结构化和超格式的数据;不仅是单一介质的数据,还可以是多介质的数据。随着分布式技术和网络技术的发展,数据库的共享能力也越来越强,共享的数据库可分布在世界各地。

(5)更加强大的事务管理:现代数据库技术包括从事务的模型、特征直到实现的技术。具体表现在:复杂事务模型具有内部构造和相互间通信与合作的事务。

图7-1-1从数据模型、新技术内容、应用领域三个方面阐述了新一代数据库系统。

img193

图7-1-1 新一代数据库系统

7.1.2数据库技术与相关技术的融合

数据库技术发展的基础可以概括为两种原动力,即技术发展和应用需求的推动。其中,技术发展一方面是指数据库技术本身方法理论的发展,另一个重要的方面是与其他学科的内容、技术的结合。在结合中涌现出各种新型的数据库(如图7-1-2所示)。

下面以几个新型数据库为例,描述数据库技术如何吸收、结合其他技术而成为数据库领域的众多分支和研究课题,并极大地丰富和发展了数据库技术。

1.分布式数据库

分布式数据库系统(Distributed Database System)是集中式数据库技术与计算机网络技术相结合的产物。20世纪70年代中期以来,一方面地理上分散的大公司、企业、团体、组织迫切要求既能统一处理又能独立操作其分散在各地的数据库,另一方面集中式数据库技术与计算机网络技术已经发展成熟,再加上硬件技术进一步发展、价格不断下降,这三方面因素的共同作用,导致了分布式数据库技术的诞生和迅速发展。经过长期的攻关和改造,目前分布式数据库已进入实用阶段。

img194

图7-1-2 数据库技术与其他技术的相互渗透

分布式数据库系统就是分布在计算机网络上的多个逻辑相关的数据库的集合。把集中式数据库用网络连接起来,只是(集中式)数据库联网。使分散在各个场地上的集中式数据库可以被网络上的用户通过远程登录加以访问,或者通过网络传递数据库中的数据,这就是分布式数据库。分布式数据库应具有以下特点:

①数据的物理分布性。数据库中的数据不是集中存储在一个场地的一台计算机上,而是分布在不同场地的计算机上。

②数据的逻辑整体性。数据库虽然在物理上是分布的,但这些数据并不是互不相关的,它们在逻辑上是相互联系的整体。

③数据的分布独立性(也称分布透明性)。分布式数据库中除了具有数据的物理独立性和逻辑独立性外,还有数据的分布独立性。即在用户看来,整个数据库仍然是一个集中的数据库,用户不必关心数据的分片,不必关心数据物理位置分布的细节,也不必关心数据副本的一致性,分布的实现完全由系统来完成。

④场地自治和协调。系统中的每个节点都具有独立性,能执行局部的应用请求;每个节点又是整个系统的一部分,可通过网络处理全局的应用请求。

⑤数据的冗余及冗余透明性。与集中式数据库不同,分布式数据库中应存在适当冗余以适合分布处理的特点,提高系统处理效率和可靠性。但分布式数据库中的这种数据冗余对用户是非透明的,即用户不必知道冗余数据的存在,维护各副本的一致性由系统来负责。

例如,假设一个公司拥有4个子公司,总公司与各子公司各有一台计算机,并已联网,每台计算机带有若干终端(如图7-1-3所示)。场地A为公司的总部,位于场地B的公司负责制造和销售其产品,位于场地C、D、E的公司负责销售其产品。各场地都存储了本场地雇员的数据,场地B存储了产品制造情况的数据,场地B、C、D、E存储了本场地销售、库存情况的数据。可执行的全局应用包括:总公司汇总销售情况、总公司汇总库存情况、公司间的人员调动等;可执行的局部应用包括:场地B检查产品制造情况、场地E统计本子公司雇员的平均工资等。这是一个典型的分布式数据库系统。

分布式数据库系统的上述性质和特点决定了其具有以下优点:

①分布式控制。分布式数据库的局部自治性使得系统不仅能执行全局应用,而且能执行局部应用,这样就可以把一组用户的常用数据放在它们所在的场地,并进行局部控制,以减少通信开销。例如,图7-1-3中,场地B的用户经常用到产品制造情况的数据,于是可以把这些数据放在场地B。

img195

图7-1-3 分布式数据库结构示意图

②数据共享。分布式数据库系统中的数据共享有两个层次:局部共享和全局共享。即各场地的用户可以共享本场地局部数据库中的数据;全体用户可以共享网络中所有局部数据库中的数据(包括存储在其他场地的数据)。

③可靠性和可用性得到加强。由于存在冗余数据,当一个场地出现故障时,系统可以对另一场地上的相同副本进行操作,不会因一处故障造成整个系统瘫痪。同时系统还可以自动检测故障所在,并利用冗余数据修复出故障的场地的数据,这种检测和修复是联机完成的,能够提高系统的可用性,这对实时应用尤为重要。

④性能得到改善。由于用户的常用数据放在用户所在场地,从而既缩短了系统的响应时间,又减少了通信开销;由于冗余数据的存在,系统可以选择离用户最近的数据副本进行操作,也缩短了响应时间和减少了通信开销;由于每个场地只处理整个数据库的一个部分,因此对CPU和I/O服务的争用不像集中式数据库那么激烈;由于一个事务所涉及的数据可能分布在多个场地,因此增加了并行处理事务的可能性。

⑤可扩充性好。分布式数据库系统的内在特点决定了它比集中式数据库更容易扩充。并且由于分布式数据库系统具有分布透明性,使得这种扩充不会影响已有的用户程序。

但是分布式数据库系统也存在着一些缺点,诸如系统复杂、增加开销(包括硬件开销、通信开销、冗余数据的潜在开销等)。

2.分布式数据库的体系结构

集中式数据库系统的体系结构是一种三级模式结构,由外模式、模式和内模式组成。分布式数据库系统的体系结构则是:(若干个)局部数据模式+(一个)全局数据模式。

如图7-1-4所示。其中局部数据模式是各局部场地上局部数据库系统的结构模式,它具有集中式数据库系统的三级模式结构;全局数据模式是用来协调各局部数据模式使之成为一个整体的模式结构,它具有4个层次,即全局外模式、全局概念模式、分片模式和分布模式。

由于以上4个模式较为复杂,也不是本书讨论的重点,有兴趣的读者请参看有关书籍中对它们的详细阐释。

3.分布式数据库的分类及发展

分布式数据及其分布式数据库管理系统(DDBMS),根据许多因素有不同的分类方法,总的原则是分布式数据库及DDBMS的数据和软件必定分布在用计算机网络连接的多个场地上。从应用需要或本身的特征方面考虑可将它从几个方面来分类:

img196

图7-1-4 分布式数据库系统的模式结构

①按DDBMS软件同构度来分。同构型分布式数据库指所有服务器软件(或每个LDBMS)和所有客户软件均用相同的软件:反之,则称为异构型分布式数据库。

②按局部自治度来分。若对DDBMS的存取必须通过客户软件,则系统称为无局部自治;若局部事务允许对服务器软件进行直接存取,则系统称为有一定的局部自治,一个极端的DDBMS常称为联邦型DDBMS或称为多数据库系统(Multidatabase System)。

③按分布透明度来分。若用户可以对集成模式操作而不需要涉及任何片段、重复、分布等信息,则这类DDBMS称为有高度分析透明(或高度模式集成);若用户必须知道所有关于片段、分配、重复等信息时,则这类DDBMS没有分布透明,没有模式集成度。当然DDBMS可以提供介于这两者之间即提供部分分布透明。

新应用的出现,如办公自动化系统(OA),计算机集成制造系统(CIMS),计算机辅助设计(CAD),人工智能(AI)等,要求DBMS不断增加新功能,尤其是知识库和面向对象数据库的研究。对于分布式数据库而言,产生了新的分布式研究:分布式知识库系统和分布式面向对象数据库。计算机技术,如并行多处理机、超高速网络的出现,也促进了分布式数据库系统向更广阔的领域发展,如平行数据库的研究。

4.异构分布式数据库

异构分布式数据库是指对已经存在的多个异构数据库,在尽可能少地影响其本地自治性的基础上,构造具有用户所需要的某种透明性的分布式数据库,以支持对物理上分布的多个数据库的全局访问和数据库之间的互操作性。虽然分布式数据库系统的应用已经成为可能,然而现有的大量的数据库系统不可能全部丢弃而开发全新的分布式数据库系统,而且目前仍有大量的数据库不是以关系方式存储的。具体地说,以下几个方面促使异构分布式数据库的发展成为必然。

(1)同一组织内不同数据库的形成

一般说来,一个组织内每一个部门都有着各自的信息要求且有特定的应用。每一个部门根据自己应用的特性去选择一个适当的数据库管理系统支持自己的应用。各部门采用的数据库系统对整个组织来说,它们以不同的数据模型描述数据,分别以不同语言书写事务,以不同机制对访问进行控制,必然导致组织内异构数据库的形成。

(2)同一组织内不同数据库的共享

同一组织内不同部门的特定应用所涉及的数据可能是相同的,为了使分散在不同部门的数据有效使用,要求实现数据共享。事实上同一组织内数据共享是信息时代一个组织内数据处理的最主要的特征。

(3)同一组织内要求计算机硬件、软件及人才资源的共享

分布在同一组织内的异构数据库系统中的每一个局部数据库系统均有自己的运行环境、软件系统及相应的技术人员,必然造成软、硬件及人才资源的重复。同时当需解决数据共享问题时,很难确定由哪一个部门的数据库系统解决问题,部门间为完成数据共享所做的通信及协调工作很难实现。

综上所述,人们迫切需要研究一种异构数据库系统,以满足实际应用的需要。这类异构数据库系统通常是若干个相关数据库的集合,有的称为多数据库系统。一般地,多数据库系统中的各个数据库在建立多数据库系统前早已存在,在加入多数据库系统之后仍应具有自治性。通常,将多数据库系统中的各个数据库称为参与数据库。当然参与数据库也可以全部在同一场地,也可以分布在多个不同的场地;参与数据库可以是同构的亦可以是异构的。

目前包括已有的数据库和新的数据库系统的异构数据库系统已经开发出来。在这些系统中每一个局部数据库系统都有着各自独立的运行环境,具有特定的完整性和安全性限制,它们在各自的应用中高效运行且保证各自完整性限制和安全性限制。然而它们是异构的。为了保证各自的应用、安全性及完整性限制,它们必须具有各自的数据模型、数据语言及数据库管理系统。由于运行环境的不同,它们也具有自己的计算机硬件、软件和专业人员。在异构数据库系统中最具代表性的是联邦数据库系统,它是一种分布式多数据库系统。

5.联邦数据库

在异构数据库的联邦数据库(Federated Database)系统中,首先要实现不同数据库间的数据共享及软、硬件和人力资源的合并,而这种合并不会破坏各局部数据库系统的自治性。为此,先讨论联邦数据库系统应满足的基本要求:第一,联邦数据库系统中各数据库均属同一组织,该组织要求实现组织内各数据库的数据共享以便处理组织内事务,新的应用能从共享数据库上开发出来;第二,组织内每一个数据库均拥有独立的应用特征,并保证各自数据完整性及安全性限制要求,异构数据库中数据共享由各个数据库系统控制,即各局部数据库自治;第三,为了高效地达到数据库系统数据共享及访问控制的目的,组织内各异构数据库系统必须协调控制。

异构数据库系统数据共享必然导致新的单一的体系结构的产生,以取代多个独立的分散的应用环境,或者说要实现异构数据库系统的互操作性或多数据库系统的互操作性。因此,联邦数据库系统作为异构分布式数据库系统的一个重要领域应具有的基本功能是:实现联邦系统中数据的共享;联邦数据库应能实现数据的透明访问;同时保证联邦数据库系统中各局部数据库系统的自治能力。为了保证用户可以方便地共享数据,联邦数据库系统还应提供多种数据模型及多种数据语言以及它们间的转换能力。为了实现局部数据库系统的自治,联邦数据库系统应提供一种高效正确的数据访问机制以及协调访问的并发控制机制。

值得强调的是,用以构成联邦数据库系统的各局部数据库系统可以包括最新的数据库系统(如面向对象的数据库管理系统),亦包括传统的数据库系统(如关系数据库系统、层次数据库系统等)。不管是新的数据库系统还是传统的数据库系统,其中的细化这里均不加以叙述。

6.对象-关系数据库

鉴于传统的关系数据库系统在解决新兴应用领域中的问题时倍感吃力,而面向对象的数据库系统目前还存在着种种问题,因此人们开始研究一种中间产品,将关系数据库与面向对象数据库结合,即所谓的对象-关系数据库系统(Object Relation Database System,ORDBS)。

(1)对象-关系数据库的特点

对象-关系数据库系统兼有关系数据库和面向对象数据库两方面的特征,即它除了具有原来关系数据库的种种特点外,还具有以下特点:

第一,支持复杂的数据类型和数据结构,如:变长数据、图形、动画、CAD/CAM、CASE等,并允许用户扩充可公用的基本数据类型、函数和操作符。

第二,能够在SQL中支持复杂对象,即由多种基本类型或用户定义的类型构成的对象。

第三,继承机制、信息隐藏与抽象技术支持软件重用,具有优良的应用开发环境。这是面向对象技术最有发展前景的特性。能够支持子类对超类的各种特性的继承,支持数据继承和函数继承,支持多重继承,支持函数重载。

第四,能够提供功能强大的通用规则系统,而且规则系统与其他的对象-关系特征是集成为一体的,例如,规则中的事件和动作可以是任意的SQL语句,可以使用用户自定义的函数,规则能够被继承等。新的约束、触发和规则被定义,以支持复杂的数据结构和操作,保证数据的完整性。

第五,具有导航式查询和关联式查询以及实时交互能力。

第六,支持分布式计算及独立于平台的大型对象存储,以适应大规模的分布式计算的要求。

第七,支持工程事务管理,改进传统的并发控制策略,可进行版本管理和模式修改。

第八,从DDL到DML,再到数据库设计都有固定的标准或规则。

(2)对象-关系数据库系统的实现方法

实现对象-关系数据库系统的方法主要有以下5类。

①从头开发对象-关系DBMS。这种方法费时费力,不是很现实。

②在现有的关系型DBMS基础上进行扩展。扩展方法有两种:

·对关系型DBMS核心进行扩充,逐渐增加对象特性。这是一种比较安全的方法,新系统的性能往往也比较好。

·不修改现有的关系型DBMS核心,而是在现有关系型DBMS外面加上一个包装层,由包装层提供对象-关系型应用编程接口,并负责将用户提交的对象-关系型查询映像成关系型查询,送给内层的关系型DBMS处理。这种方法的系统效率会因包装层的存在受到影响。

③将现有的关系型DBMS与其他厂商的对象-关系型DBMS连接在一起,使现有的关系型DBMS直接而迅速地具有对象-关系特征。连接方法主要有两种:

·关系型DBMS使用网关技术与其他厂商的对象-关系型DBMS连接。但网关这一中介手段会使系统效率打折扣。

·将对象-关系型引擎与关系型存储管理器结合起来。即以关系型DBMS作为系统的最底层,具有兼容的存储管理器的对象-关系型系统作为上层。

④将现有的面向对象型DBMS与其他厂商的对象-关系型DBMS连接在一起,使现有的面向对象型DBMS直接而迅速地具有对象-关系特征。连接方法是将面向对象型DBMS引擎与持久语言系统结合起来。即以面向对象的DBMS作为系统的最底层,具有兼容的持久语言系统的对象-关系型系统作为上层。

⑤扩充现有的面向对象的DBMS,使之成为对象-关系型DBMS。

目前许多著名的关系数据库系统的最新版本都是对象-关系型数据库系统。如INFOMIX9.0,ORACLE8.0等。

7.主动数据库

传统数据库系统是被动系统,它只能被动地按照用户给出的明确请求执行相应的数据库操作,很难充分适应这些应用的主动要求,因此在传统数据库基础上,结合人工智能技术和面向对象技术提出了主动数据库(Active Database)。

主动数据库的主要目标是提供对紧急情况及时反应的能力,同时提高数据库管理系统的模块化程度。主动数据库通常采用的方法是在传统数据库系统中嵌入ECA(即事件-条件-动作)规则,在某一事件发生时引发数据库管理系统去检测数据库当前状态,看是否满足设定的条件,若条件满足,便触发规定动作的执行。这种方法实际上为系统提供了一个“自动监视”机构,它能主动地检索特性,使数据库的存取控制、例外处理、主动服务和复杂的演绎推理功能等以一种统一的机制实现,并方便地实现实时数据库、合作数据库、动态数据库和演绎数据库等。

主动数据库是目前数据库技术中一个活跃的研究领域,近年来的研究已取得了很大的成果。当然,主动数据库还是一个正在研究的领域,不少技术问题还有待进一步研究解决。

8.多媒体数据库

媒体是信息的载体。多媒体是指多种媒体,如数字、文字、图形、图像和声音的有机集成。其中数字、字符等称为格式化数据,文本、图形、图像、声音、视频等称为非格式化数据,非格式化数据具有数据量大、处理复杂等特点。多媒体数据库(Multimedia Database)实现对格式化和非格式化的多媒体数据的存储、管理和查询,其主要特征包括:能够表示多种媒体的数据;能够协调处理各种媒体数据,正确识别各种媒体数据之间在空间或时间上的关联;提供比传统数据管理系统更强的适合非格式化数据查询的搜索功能;提供各种事务处理与版本管理能力。

当前的多媒体应用系统提供的大多是基于文件的管理方式,通用的多媒体管理软件的研究还在实验与发展之中。多媒体数据库技术是多媒体数据管理技术的主要和重要研究内容,多媒体数据库是与传统数据库不同的数据库,其主要特征是要实现对多种媒体的混合、扩充和变换。亦即多媒体数据管理要能实现:对多种媒体的统一管理,对媒体可以进行追加和变更,并能实现媒体间的相互转换。多媒体数据库要能使用户在对数据库的操作中,可最大限度地忽略媒体间的差别,即实现多媒体数据库的所谓媒体独立性。

多媒体数据库技术有很多关键技术,其关键内容之一是多媒体数据模型的建立,即多媒体的数据建模。它包括概念模型的建立、逻辑模型和物理模型的建立。

多媒体数据模型的实现可以通过不同的方法,并可根据对象系统的情况来选择。根据当前的技术发展,一般可供选择的方法有三种,即:①基于关系数据模型的方法;②基于语义数据模型的方法;③基于面向对象的数据模型方法。

多媒体数据库管理系统(MDBMS)是对多媒体数据进行管理的重要软件,它实现对多媒体数据的存储、管理和查询。现在人们把多媒体数据库管理系统的体系归纳为三种,即单一DBMS结构、主从DBMS结构和协同DBMS结构,也称为集中式结构、主从式结构和协作式结构。不同体系结构可以满足不同的应用需求。而根据多媒体应用需求和发展,分布式多媒体系统将会成为主要的应用形式。

总的来说,随着应用需求的不断增长和各种多媒体存储技术的飞速进步,多媒体技术将成为实现各种数据库的必要手段和物质基础。

9.并行数据库

近年来,计算机体系结构的一个明显发展趋势是从单处理器结构向多处理器结构过渡,另一方面,计算机应用的发展已超过了单处理器处理能力的增长速度,数据库中数据量高速增长,使新一代数据库应用对数据库性能和可用性提出了更高的要求,因此将传统的数据库管理技术与并行处理技术结合的并行数据库技术已越来越为人们所瞩目。并行数据库系统(Parallel Database System)以高性能(线性加速比)、高可用性与高扩充性(线性伸缩比)为目标,充分利用多处理器平台的能力,通过多种并行性,在联机事务处理与决策支持应用两种典型环境中提供优化的响应时间与事务吞吐量。因此人们普遍认为,并行数据库系统必将成为未来的高性能数据库系统。

(1)并行数据库系统的体系结构

对应于并行计算机的三类体系结构,并行数据库系统的体系结构有以下三种:

①共享内存(Shared-Memory)结构,如图7-1-5(a)所示。在该结构中,共同执行一条SQL语句的多个数据库构件通过共享内存交换消息与数据。数据库中的数据划分在多个局部磁盘上,并可以为所有处理器访问。共享内存结构是单SMP硬件平台上最优的并行数据库结构。

②共享磁盘(Shared-Disk)结构,如图7-1-5(b)所示。在该结构中,所有处理器可以直接访问所有磁盘中的数据,但它们无共享内存。因此该结构需要一个分布式缓存管理器来对各处理器(节点)并发访问缓存进行全局控制与管理。多个DBMS实例可以在多个节点上运行,并通过分布式缓存管理器共享数据。共享磁盘结构是共享磁盘的硬件平台上最优的并行数据库结构。

③无共享资源(Shared-Nothing)结构,如图7-1-5(c)所示。在该结构中,数据库表划分在多个节点上,可以由网络的多个节点并行执行一条SQL语句,各个节点拥有自己的内存与磁盘,执行过程中通过共享的高速网络交换消息与数据。无共享资源结构是大规模并行处理(MMP)和紧耦合全对称多处理器(SMP)群集机硬件平台上最优的并行数据库结构。

img197

图7-1-5 并行数据库的体系结构

并行数据库系统的三种体系结构各有利弊。目前人们普遍认为,MPP或SMP群集机平台上的无共享资源结构是并行数据库系统的优选结构,非常适合于复杂查询及超大型数据库应用。但同时它也是最难实现的结构。

(2)并行处理技术

一个理想的并行数据库系统应能充分利用硬件平台的并行性,采用多进程多线索结构,提供4种不同粒度的并行性:不同用户事务间的并行性、同一事务内不同查询间的并行性、同一查询内不同操作间的并行性和同一操作内的并行性。

事务间的并行性是粒度最粗也是最易实现的并行性。由于这种并行性允许多个进程或线索同时处理多个用户的请求,因此可以显著增加系统吞吐量,支持更多的并发用户。

同一事务内的不同查询如果是不相关的,它们并行执行必将提高效率,但由DBMS进行相关性判断比较复杂。

同一查询内的不同操作往往可以并行执行,即将一条SQL查询分解成多个子任务,由多个处理器执行。例如,下列查询操作

SELECT部门号,职工号

FROM部门,职工

WHERE部门.部门号=职工.部门号

ORDERBY部门号可以分解为扫描部门表和职工表、对两表进行连接、对连接结果排序以及输出等5个子任务。前一子任务的输出即是下一子任务的输入,后一子任务等待前一子任务产生一定量的输出后(而不必等待前一子任务执行完毕)即可在另一处理器上开始执行。这种并行方式称为垂直并行或流水线并行。

操作内并行性的粒度最细,它将同一操作(如扫描操作、连接操作、排序操作等)分解成多个独立的子操作,由不同的处理器同时执行。例如,如果部门表划分到4个不同的磁盘上,则扫描部门表的操作就可以分解成4个子操作同时执行,从而大大加快了扫描部门表的操作。这种并行方式称为水平并行或划分并行。从广义上讲,事务间和查询间的并行性也属于水平并行。

并行数据库系统是新兴的数据库研究领域。目前国外已有一些并行数据库的原型系统,但尚无真正的并行数据库系统投入运行。即使近年来一些著名的数据库厂商开始在数据库产品中增加并行处理能力,但它们都不能算作真正的并行数据库系统。尽管并行数据库的研究有待于进一步发展和实践,不可否认,在注重效率的当今社会,并行数据库将成为数据库学科的一个非常重要的分支。

10.其他数据库

(1)智能数据库

智能数据库(Intelligent Database,IDB)以数据库为研究对象,以人工智能作为研究工具以改进、扩充数据库的功能。从人工智能角度看,DBMS是一种管理数据的专家系统,因此可以用专家系统的方法对其进行改造。即将DBMS看成是一种演绎系统,在此演绎系统中用知识表示方法来刻画模式和数据,用逻辑推理方法实现数据操纵、完整性、安全性等功能,同时改进与扩大数据库的功能,扩大数据库的存储容量。

随着计算机应用的发展要求所管理的对象能从数据扩大到知识,知识库管理系统(KBMS)应运而生,这将对知识工程、专家系统以及智能计算机的发展具有重大的意义。数据库系统是一种直接为用户服务的应用系统,因而其界面的友好性是极为重要的。近年来发展起来的数据库自然语言界面可为数据库系统提供较好的用户界面。总之,从数据库管理系统到其他用户界面,从系统到数据库设计都可以用人工智能的方法来实现。这样,原来数据库领域中分割的各部分在理论、方法、实现等各方面均可用人工智能将其统一起来,这是一种观念上、方法论上的重大突破,将为数据库的进一步研究与发展提供重要的支撑与基础。尽管许多相关问题仍未解决,但人工智能和数据库技术相结合肯定是数据技术未来发展的方向。

(2)模糊数据库

数据库是对客观世界的一部分(可能是一个企业、一个单位、一个或一组事物等)的一种抽象描述。各种数据是对客观世界中事物的属性、数量、位置和它们间相互关系的形式表示,是各种信息的载体。现有的各种代数的和逻辑的理论已为确定的或精确的客观事物的描述提供了方法,也为数据库各种模型的建立提供了必要的理论基础。然而,越来越多的人开始认识到,从某种意义上讲,现实世界中的绝大多数事物和现象是表达不完全、不确定或模糊不清的,一般很难采用一种基于二值逻辑和精确数学理论的数据模型来描述。而在作为客观世界的抽象描述的数据库中,如果不能表示模糊性和不完全性等概念将是一个很大的不足,因此为了把不完全、不确定或模糊性的数据引入数据库,有必要开展模糊模型的研究,通过建立一种抽象模型以便把世界描述得更加贴切逼真。

模糊数据库的理论和技术虽然经过几年来的研究和发展,一方面可以说已经取得了不少成果,如提出模糊关系推理语言,实现了部分模糊数据库管理系统的原型,在模糊查询、模式识别、咨询决策和知识处理等方面获得了成功的应用,等等。这表明所提出有关模糊数据库理论的正确性及处理方法与技术具有可行性。但另一方面,仍应该说至今关于模糊数据库的理论和技术的研究,无论在国内还是在国外,都尚处于初创阶段,远未达到成熟和完善,还有待做长期而深入的研究。

通过上述介绍,可以看到数据库技术和其他计算机技术的结合,大大丰富并提高了数据库的功能、性能和应用领域;大大发展了数据库的概念和技术。

数据库技术和其他技术相结合产生了众多新型的数据库系统,它们是新一代数据库大家族的重要成员。应该指出,它们之间并不是孤立的概念和系统。例如,分布式数据库系统强调了分布式的数据库结构和分布处理功能,而它支持的数据模型可以是关系模型、扩展关系模型、OO模型或者某一特定数据模型;分布式数据库系统中集成的数据库也可以是空间数据库。又如主动数据库系统强调了数据库在反应能力上具有主动性、快速性和智能化的特性。其数据模型有的是在关系模型中加入事件驱动的主动成分,有的是研究用OO模型实现主动数据库,至于它的系统结构,可以是集中式的,也可以是分布式的。因此具体到某一应用系统中的数据库系统常常会兼有以上多种数据库系统的技术特性。

(3)应用数据库

这类数据库在原理上也没有多大的变化。但是它们却与一定的应用相结合,从而加强了系统对有关应用的支撑能力,尤其表现在数据模型、语言、查询方面。它包括:数据仓库(DataWarehouse)、空间数据库(Spatial Database)、地理数据库(Geographic Database)、工程数据库(Engineering Database)、统计数据库(Statistic Database)、演绎数据库(Deductive Database)等。数据仓库与演绎数据库在商业应用领域使用十分广泛,通常利用数据仓库存放大量历史数据,再利用演绎数据库中所提供的数据挖掘和知识发现功能对数据仓库中的数据进行处理,产生知识和模式;空间数据库和地理数据库在测量、勘探、城建、卫星定位等领域使用广泛,典型的应用是GIS,GPS;工程数据库在工程领域使用较多,典型代表是支持CAD,CAM的数据库,尤其是CASE数据库;统计数据库在具有大量统计数据的领域使用广泛,是用来对统计数据进行存储、统计、分析的数据库系统。