吹响后关系数据库时代的号角
随着 网络 应用的发展与普及,我们正步入一个后关系 数据库 时代。那么,究竟什么是后关系型数据库?它和关系数据库有何区别?为了迎接后关系数据库时代,我们应该做好哪些准备呢?本期访谈中,我们特邀清华大学软件中心副总工程师程渝荣教授为我们做一个前
随着
网络应用的发展与普及,我们正步入一个后关系
数据库时代。那么,究竟什么是后关系型
数据库?它和关系
数据库有何区别?为了迎接后关系数据库时代,我们应该做好哪些准备呢?本期访谈中,我们特邀清华大学软件中心副总
工程师程渝荣教授为我们做一个前瞻性的介绍。
吹响后关系数据库时代的号角
程渝荣教授谈后关系型数据库技术
问:随着网络应用的发展与普及,有人称我们正步入一个后关系数据库时代。请问究竟什么是后关系型数据库?它又是如何产生的呢?
---- 答:从数据库发展的角度来看,数据库技术的演变可以划分为几个阶段:首先是以技术为中心的阶段,在70年代,DBMS的实现方案都关注于能提供对信息的联机访问,着眼于以最高的处理效率来最少使用价格高昂的硬件,因此能够为特殊硬件平台优化的那些由厂商专卖而非开放式的DBMS曾经是早期数据库发展阶段的适宜选择。80年代是以用户为中心的阶段,随着硬件价格的下降和个人计算机的普及,用户的信息
需求显著上升而“
知识工人”的生产效率成为关键的成功因素。这时,带有易于理解的二维数据模型的关系型数据库则大受欢迎。90年代,计算机应用开始步入以网络为中心的阶段。尤其是随着Internet的发展,数据库面临着信息爆炸的挑战,而数据对象也不仅仅限于文本数据等简单的数据类型,还需要描述和保存各种各样的媒体和真实事件。此外,随着热门网站访问人数的激增,对数据库本身的存储机制、空间使用的效率及
安全性等方面都提出了更高的要求。而这些都不是传统关系数据库中简单的二维表结构所能满足的。现在国内有很多人抱怨Internet网太慢,这其中一方面有带宽的原因,而另一方面则与数据库的效率也不无关系。这就好比是开车去超市买东西,马路固然要宽、车道要多,但如果收款处存在瓶颈,速度也仍然快不起来。在这种
需求下,后关系型数据库应运而生。
---- 所谓后关系数据库,实质上是在关系数据库的基础上融合了
面向对象技术和Internet网络应用
开发背景的发展。它结合了传统数据库如网状、层次和关系数据库的一些特点,以及
Java、Delphi、ActiveX等新的
编程工具环境,适应于新的以Internet
Web为基础的应用,开创了关系数据库的新时代,即所谓的后关系型数据库时代。
---- 早在70年代后期,人们已在研究后关系数据库。一位名为P.Chen的人在1976年提出的实体-关系数据模型就是一个例子。当时还是网状数据库、层次数据库和关系数据库并存的时候,P.Chen提出后关系数据库概念的目的就是希望能够将传统的3种模型的数据库统一到实体-关系数据模型上,或者作为这3种传统数据库模型相互间进行转换的一种中间模型。但是后来,后关系型数据库一直作为一种概念型的模型使用,并没有付诸实现。直到现在,在Internet的需求发展刺激下才开始有成型的产品出现,并且其概念较之70、80年代也更加发展完善了。
---- 问:后关系型数据库的主要特征是什么?它相对于传统的关系数据库有何优势?
---- 答:传统关系数据库因为自身具有的局限性,难以适应建立以网络为中心的企业级快速事务交易处理应用的需求。它的局限性主要体现在以下3个方面,首先是数据模型上的限制,关系数据库所采用的二维表格数据模型不能有效地处理在大多数事务处理应用中典型的多维数据,结果往往是建立了大量的表,用了复杂的方式来处理,却仍然很难模仿出数据的现实关系。更糟的是,这些表之间的连接经常隐藏在应用程序里,而不是存在于更易于管理的数据库中。第二是
性能上的限制,为静态应
用例如报表生成而设计的关系数据库管理系统并不是为高效事务处理而优化的。其结果是某些关系数据库管理系统虽然能在为该产业特别
开发的考机
测试程序上取得满意的
性能,但是在对GUI和Web事务处理的真实世界中其
性能却并不令人满意,除非用户能在价格昂贵的硬件上大量投资。第三是伸缩性上的限制,关系数据库技术在有效支持应用和数据复杂性上的能力是受限制的,此外,高昂的开发和维护费用都是那些只是最适于报表输出的设计所不可避免的结果。这使得用传统关系数据库管理系统为Web和GUI事务交易系统提供所需的伸缩性上特别困难。
---- 后关系型数据库的主要特征是将多维处理和面向对象技术结合到关系数据库上。这种数据库使用强大而灵活的对象技术,将经过处理的多维数据模型的速度和可调整性结合起来。由于它独有的可
兼容性,对于开发高性能的交换处理应用程序来说,后关系型数据库非常理想。
---- 多维数据模型能使数据建模更加简单,因为开发人员能够方便地用它来描述出复杂的现实世界结构,而不必忽略现实世界的问题,或把问题强行表现成技术上能够处理的形态,而且多维数据模型使执行复杂处理的时间大大缩短。例如开发一个服装连锁店信息管理系统时,如果用关系数据库,就需要建立许多表,一张表用来说明每种款式所具有的颜色和尺寸,另一张表用来建立服装和供应商之间的映射,并表示它是否已被卖出,此外还需要建一些表来表示价格变化、各店的库存等等。每成交一笔生意,所有这些表都需要修改,很快这些关系数据库就会变得笨重而缓慢。而在多维数据模型中,可以将这些数据看做是存在于一个“立方体”中,这个“立方体”有足够多的“面”,以便对数据进行完全分类,如款式、颜色、价格、库存等等都能够立刻互相映射,获取数据极其迅速,而且由于清除了冗余的数据,多维数据库非常简单,不仅好用,而且更经济。
---- 面向对象技术使用丰富的数据类型来反映现实世界的数据关系,由于它本身具有的模块化和强有力的内部操作能力,能够有效地提高开发者的生产率。面向对象技术的产生是由于人们认识到,人类考虑问题时,想到的不是整数、字符串或其他计算机数据类型,而是一个个的对象。比如说汽车,人们每天驾驶、购买和谈论它时,并不需要深入了解内燃机的物理过程。使用对象技术,计算机也可以只“谈论”“汽车”,而不必理会潜在的各种细节。这样,一种强大的新编程方法就产生了。对象是模块化的,任何对象都可以内部发生变化,而不影响外部的其他编码。对象的这种模块化能力大大简化了应用程序的升级和维护处理。此外,对象还是内部可操作的。一个对象建立后,它就可以被其他的应用程序理解、使用甚至更改,而不管这些应用程序使用的是哪种程序设计语言。
---- 如上所述,以事务型多维数据模型和集成的面向对象功能为特征的后关系型数据库能够提供事务处理应用开发所需的高性能和伸缩性,支持应用和数据的复杂性,正成为事务交易处理的优先选择之一。
---- 问:后关系型数据库技术研究的前景如何?您刚才谈到,在Internet的需求发展刺激下已有成型的产品出现,能为我们介绍一二吗?
---- 答:鉴于关系数据库的二维数据模型存在着本身难以描述复杂实际数据的
缺陷,一些关系数据库的厂商正在试图扩展他们的数据模型来支持各种对象,但是所谓的对象-关系数据库或通用数据库仍然存在着性能不尽如人意,或过于繁杂,或价格过高等诸多难题,因而在市场上还难成气候。另外也有一些厂商在开发对象数据库,例如Vers
ant公司在这方面已奋斗多年,但也成效不大,或许这类技术在CA公司即将推出的Jasmine对象数据库之后能够得到加速推动。
---- 后关系型数据库技术经过20多年的发展,已较P.Chen提出的概念模型有了较大的进步,并开始有成型的产品出现。最近,由美国InterSystems公司发布的Caché就是一个用于高性能事务应用的后关系型数据库管理系统,具有面向对象的许多功能和一个事务型多维数据模型。它建立在ANSI和ISO双重标准的M技术标准之上。它的数据模型是多维的而不是关系的,并且具有独特的存储数据方式。这种后关系型数据库为有大量用户同时使用的Web复杂交易处理进行了优化,并且已经在有几千用户的实际网络环境中证明可提供高速而可靠的性能。
---- Caché不仅是一个快速应用程序开发工具,具有可重用对象部件能力,而且有一个集成的用于事务处理、Client/Server应用的高性能数据库管理系统。Caché的三重访问数据库提供了经过对象、
SQL或直接数据访问方式快速访问、检索和更新数据的性能,并且其系统响应时间可小于1秒。它的应用程序能够从一个平台移植到另一个平台上而无需修改程序代码行,可以在各种不同硬件平台和软件平台上运行,如
Windows 95、
Windows NT、
Unix和Digital VMS等等。此外,因为Caché方便易用,大大减少了通常在使用别的技术时所必需的人工干预工作量,显著降低了与系统管理有关的费用,能够提供更好的性能价格比。目前,我国各行各业正面临加速信息化的机遇,像Caché这种在国际上已证明行之有效、既能大量省钱又有独特性能的、先进、可靠而成熟的技术,值得我们大力推广,并给予充分的重视。
---- 问:国内对后关系型数据库的认识如何?您对国内的数据库用户有何建议?
---- 答:坦白地说,国内对后关系型数据库的了解甚少。学术界虽然有过一些介绍,但应用人员对它的认识还远远不够。目前国内只有北京医科大学人民医院、中青创业和瑞得恒昌计算机系统工程有限公司等几家做医疗系统的单位开始在后关系数据库的基础上开发以医疗信息为中心的医院信息管理系统,一是因为他们觉得原来的数据库使用起来效率太低,性能满足不了目前和今后的应用,二是因为今后开发基于Web的应用,也需要后关系型数据库的支持。除了医疗系统以外,在诸如
金融、证券业、交通业、制造业以及电子商务等应用领域,后关系型数据库技术也都是大有前途的。
---- 然而遗憾的是,现在国内应用人员对这些情况不太了解,仍然在沿用一些传统的数据库产品开发面向新的、以Web为基础的应用。其实,某些我们熟悉的数据库产品在国际市场上已出现了负增长的局面,但在我国却仍然占据着很大的市场。虽然一些传统的关系数据库产品也已经做了不小的改进,尤其是增强了面向Internet和多媒体方面的功能,但是总的来说仍然存在一些不如人意之处。所以,我建议国内用户在选择数据库的时候应注意跟踪数据库技术的发展以及数据库市场的发展动态,注意数据库技术的创新、市场的创新,并以此为依据来选择自己的系统。
原文转自:http://www.ltesting.net
|