北理软件工程硕士论文1数据库技术发展概述摘要:20世纪50年代,随着计算机技术的发展,其应用领域不再局限于科学计算,人们开始使用计算机来管理数据。由此,计算机技术新的研究分支——数据库技术应运而生。所谓数据库就是将许多具有相关性的数据以一定的组织方式存储在一起形成的数据集合。而数据库管理系统(DatabaseManagementSystem,简称为DBMs)是支持人们建立、使用、组织、存储、检索和维护数据库的软件系统。它包括数据库模型、数据模型、数据库与应用的接口语言等。经过多年的探索,目前,数据库技术已相当成熟,被广泛应用于各行各业中,成为现代信息技术的重要组成部分,是现代计算机信息系统和计算机应用系统的基础和核心。关键字:数据库技术、管理系统、信息技术、基础和核心1、数据库技术的发展历程在数据库出现前,计算机用户是使用数据文件来存放数据的。常用的高级语言从早期的FORTRAN到今天的c语言,都支持使用数据文件。有一种常见的数据文件的格式是,一个文件包含若干个“记录”,一个记录又包含若干个“数据项”,用户通过对文件的访问实现对记录的存取。通常称支持这种数据管理方式的软件为“文件管理系统”。在这种管理方式下,这些数据与其他文件中数据有大量的重复,造成了资源与人力的浪费。随着计算机所处理的数据的日益增多,数据重复的问题越来越突出。于是人们就想到将数据集中存储、统一管理,这样就演变成数据库管理系统从而形成数据库技术。数据库的诞生以20世纪60年代IBM公司推出的数据库管理产品IMs(Info咖ationMana髀mentSystem)为标志。数据库的出现,实现了数据资源的整体和结构化管理,使数据具有了共享性和一定的独立性,并能够对冗余度进行控制。数据库管理系统的推出,使得数据库概念得到了普及,也使得人们认识到数据的价值和统一管理的必要。但是由于IMs是以层次模型来组织和管理数据的,对非层次数据使用虚拟记录,大量指针的使用降低了数据使用的效率,同时,数据库管理系统提供的数据模型机及数据库语言比较低级,数据的独立性也比较差,给使用带来了很大的局限性。为了克服这些缺点,美国数据库系统语言协会(CODASYL,即ConferenceOnDataSvstemLanguage)下属的数据库任务组(DBTG,即DataBaseTaskGroup)对数据库的方法和技术进行了系统研究,并提出了著名的DBTG报告。该报告确定并建立了数据库系统的许多基本概念、方法和技术,报告成为网状数据模型的典型技术代表,北理软件工程硕士论文2它奠定了数据库发展的基础,并影响着以后的研究。网状模型是基于图来组织数据的,对数据的访问和操纵需要遍历数据链来完成。因这种有效的实现方式对系统使用者提出了很高的要求,所以阻碍了系统的推广应用。1970年IBM公司的E.F.codd发表了著名的基于关系模型的数据库技术的论文《大型共享数据库数据的关系模型》,并获得1981年ACM图灵奖,标志着关系模型数据库模型的诞生。由于关系模型的简单易理解及其所具有的坚实理论基础,整个20世纪70年代和80年代的前半期,数据库界集中围绕关系数据库进行了大量的研究和开发工作,对关系数据库概念的实用化投人了大量的精力。20世纪80年代以来,关系系统逐渐代替网状系统和层次系统而占领了市场。实践证明,由于关系模型具有严格的数学基础,概念清晰简单,数据独立性强,在支持商业数据处理的应用上非常成功。但是,关系模型不能用一张表模型表示出复杂对象的语义,不擅长于数据类型较多、较复杂的领域。随着多媒体应用的扩大,对数据库提出了新的需求,要求数据库系统能存储和处理图形、图像、声音等复杂的对象,并能实现复杂对象的复杂行为。在这种需求的驱动下,数据库模型又进入了新的研究阶段——面向对象数据库技术的研究。20世纪80年代中期以来,对“面向对象数据库系统”(00DBs)和“对象——关系数据库系统”(ORDBS)的研究都十分活跃。1989年和1990年先后发表了《面向对象数据库系统宣言》和《第三代数据库系统宣言》。面向对象数据库系统是指支持面向对象特性的数据库,它提供了面向对象的建模方法、编程语言和数据库语言,支持正文、图像、图形、声音等新的数据类型,支持类、继承、函数/方法等丰富的对象机制,并能提供高度集成的、可支持客户机/服役器应用的用户接口。1989年在东京举行了关于面向对象数据库的国际会议,第一次定义了面向对象数据库管理系统所应实现的功能:支持复杂对象、支持对象标识、允许对象封装、支持类型或类、支持继承、避免过早绑定、计算性完整、可扩充、能记住数据位置、能管理非常大型的数据库、接收并发用户、能从软硬件失效中恢复、用简单的方法支持数据查询。有一些厂商已推出了具有对象关系数据库特征的产品,0raclr8就是其中之一,具有查询对象关系能力的新一代数据库语言标准SQL已经历了SQL89、SQL92、SQL99等阶段,它的完善标志着数据库技术的进步和成熟,数据库操纵功能已溶入到各高级语言之中,如:VB、BC、JA.VA等。2、数据库技术的现状1980年以前,数据库技术的发展,主要体现在数据库的模型设计上。进入20世纪90年代后,计算机领域中其它新兴技术的发展对数据库技术产生了重大影响。数据库技术与网络通信技术、人工智能技术、多媒体技术等相互渗透,相互结合,使数据库技术的新内容层出不穷。数据库的许多整体概念、技术内容、北理软件工程硕士论文3应用领域,甚至某些原理都有了重大的发展和变化,形成了数据库领域众多的研究分支和课题,产生了一系列新型数据库。主要有以下几种数据库系统:2.1分布式数据库分布式数据库系统(Dist“butedDataBaseSvstem,DDBs)是在集中式数据库基础上发展起来的,是数据库技术与计算机网络技术、分布处理技术相结合的产物。分布式数据库系统是地理上分布在计算机网络不同结点,逻辑上属于同一系统的数据库系统,能支持全局应用,同时存取两个或两个以上结点的数据。分布式数据库系统的主要特点是:(1)数据是分布的。数据库中的数据分布在计算机网络的不同结点上,而不是集中在一个结点,区别于数据存放在服务器上由各用户共享的网络数据库系统。(2)数据是逻辑相关的。分布在不同结点的数据,逻辑上属于同一个数据库系统,数据间存在相互关联,区别于由计算机网络连接的多个独立数据库系统。(3)结点的自治性。每个结点都有自己的计算机软、硬件资源、数据库、数据库管理系统(即kcalDataBaseManagementSystem,LDBMs局部数据库管理系统),因而能够独立地管理局部数据库。2.2并行数据库并行数据库系统是在并行机上运行的具有并行处理能力的数据库系统。最近,一些著名的数据库厂商开始在数据库产品中增加并行处理能力,试图在并行计算机系统上运行。2.3主动数据库主动数据库是相对于传统数据库的被动性而言的。许多实际的应用领域,如计算机集成制造系统、管理信息系统、办公室自动化系统中常常希望数据库系统在紧急情况下能根据数据库的当前状态,主动适时地做出反应,执行某些操作,向用户提供有关信息。传统数据库系统是被动的系统,它只能被动地按照用户给出的明确请求执行相应的数据库操作,很难充分适应这些应用的主动要求,因此在传统数据库基础上,结合人工智能技术和面向对象技术提出了主动数据库。主动数据库的主要目标是提供对紧急情况及时反应的能力,同时提高数据库管理系统的模块化程度。主动数据库通常采用的方法是在传统数据库系统中嵌入EcA(即事件一条件一动作)规则,在某一事件发生时引发数据库管理系统去检测数据库当前状态,看是否满足设定的条件,若条件满足,便触发规定动作的执行。2.4多媒体数据库多媒体数据库系统(Multi~mediaDatabasesvs—tem,MDBS)是数据库技术与多媒体技术相结合的产物。在许多数据库应用领域中,都涉及到大量的多媒体数据,这些与传统的数字、字符等格式化数据有很大的不同,都是一些结构复杂的对象。它们数据量大,结构复杂,大多是非结构化的数据,来源于不同的媒北理软件工程硕士论文4体且具有不同的形式和格式。时序性强。数据传输要求连续性、稳定,笞则出现失真而影响效果。多媒体数据管理系统在多媒体应用中非常重要,它为多媒体应用提供了基本数据支撑。多媒体数据库的研究始于20世纪80年代中期,在多年的技术研究和系统开发中,获得了很大的成果。但目前还没有功能完善、技术成熟的多媒体数据库管理系统。2.5模糊数据库模糊数据库是在一般数据库系统中引入“模糊”概念,进而对模糊数据、数据间的模糊关系与模糊约束实施模糊数据操作和查询的数据库系统。模糊数据库系统中的研究内容涉及模糊数据库的形式定义、模糊数据库的数据模型、模糊数据库语言设计、模糊数据库设计方法及模糊数据库管理系统的实现。近年来,也有许多工作是对关系之外的其它数据模型进行模糊扩展,如模糊E—R(实体一关系)、模糊多媒体数据库等。当前,科研人员在模糊数据库的研究、开发与应用系统的建立方面都做了不少工作,但是,摆在人们面前的问题是如何进一步研究与开发大型适用的模糊数据库商业系统。3、数据库技术的发展趋势技术和应用的发展总是相互作用的。分析目前数据库的应用情况,可以发现:经过多年的积累,企业和部门积累的数据越来越多,许多企业面临着“数据爆炸”。如何解决海量数据的存储管理、如何挖掘大量数据中包含的信息和知识,已成为目前的急待解决的问题。因此数据挖掘成为目前发展极为迅速的一个研究领域,数据挖掘(DataMining)又称数据开采,就是从大量的、不全的、有噪声的、模糊的、随机的数据中提取隐含在其中的人们事先不知道的、但又是潜在有用的信息和知识的过程,提取的知识表现为概念(concepts)、规则(Rules)、规律模式约束等形式。它综合了机器学习、统计分析和数据库技术,是为数据库中数据的决策型使用服务的。随着计算机网络技术及Internet应用的日趋普及,势必要求数据库系统的应用平台向web平台迁移,最终达到全球数据信息共享的目的,如何实现数据库平台与web平台的无缝对接即对web数据库技术的研究也成为近期研究的热点。3.1深度(智能化)计算机科学主要目标是使计算机与人的界面尽量靠近人这边:因此,要尽量提高计算机的智能水平:智能化是计算机科学各个分支的研究前沿。在数据库方面,智能化的工作是将人工智能技术与数据库技术相结合,即演绎数据库知识库研究。目前的主要困难在于递归查询处理无法取得满意的性能,硬件技术的革命(大内存、并行机、高速存取的外存储器)将是提高知识库查询效率的重要因素。北理软件工程硕士论文53.2广度(多媒体)多媒体数据处理的困难很多,即使是一般的复杂对象目前也还不能很好地处理。多媒体数据的建模、存储和多媒体数据库的查询及查询处理等都是需要我们研究解决的内容。3.3分布(网络)信息分布方面主要是分布式数据库系统的研究。分布式数据库从20世纪70年代开始研究,但是一直没有出现商品化的分布式数据库系统,这说明了它的难度。当前比较好的具有数据分布特征的数据库管理系统是Client/Server体系结构的系统(如:SYBASE,ORACLE7等)。但新的计算机应用又对它提出了新的要求,智能化、新型事务模型、多媒体数据的处理、高速信息通讯、数据源的高度透明性等将是新型的分布式数据库系统的重要研究内容。3.4各种数据库间的数据转换这种转换有两方面的需要。数据库管理系统软件的更新和计算机网络上不同数据库间的数据共享。当数据库管理系统软件更新时,希望将原先的数据库直接转到新系统中来,以保护以前的投资。在计算机网络上,常常运行着多种类型的数据库系统,它们是在不同时间不同地点建立的,联网后这些投资要保护,所以要进行数据库转换。3.5数据库性能评价一个好的数据库应该是数据冗余尽可能少、数据库访问效率尽可能高并且数据库易于维护。这涉及到数据语义和许多人为因素,因此定量的评价非常困难。良好的评价方法或衡量模型将产生一个好的数据库设计方法,因此意义重大。3.6与软件工程的结合到目前为止,数据库设计与应