数据库(Databases,简称DB)是指长期保存在计算机的存储设备上、并按照某种模型组织起来的、可以被各种用户或应用共享的数据的集合。数据库管理系统(Database Management Systems,简称DBMS)是指提供各种数据管理服务的计算机软件系统,这种服务包括数据对象定义、数据存储与备份、数据访问与更新、数据统计与分析、数据安全保护、数据库运行管理以及数据库建立和文护等。
由于企业信息化的目的就是要以现代信息技术为手段,对伴随着企业生产和经营过程而产生的数据进行收集、加工、管理和利用,以改善企业生产经营的整体效率,增强企业的竞争力。所以,数据库是企业信息化不可缺少的工具,是绝大部分企业信息系统的核心。
纵观数据库发展,三大数据库巨头公司纷纷推出其最新产品,数据库市场竞争日益加剧。从最新的IDC报告显示,在关系数据库管理系统(RDBMS)软件市场上,Oracle继续领先对手IBM和微软,但是微软在2006年取得了更快的销售增长率……
根据对数据库发展的技术趋势不难看出,整个数据库发展呈现出了三个主要特征:
(1)、支持XML数据格式
IBM公司在它新推出的DB2 9版本中,直接把对XML的支持作为其新产品的最大卖点,号称是业内第一个同时支持关系型数据和XML数据的混合数据库,无需重新定义XML数据的格式,或将其置于数据库大型对象的前提下,IBM DB2 9允许用户无缝管理普通关系数据和纯XML数据。
对于传统关系型数据与层次型数据的混合应用已经成为了新一代数据库产品所不可或缺的特点。除了IBM,Oracle和微软也同时宣传了它们的产品也可以实现高性能XML存储与查询,使现有应用更好的与XML共存。
(2)、商业智能成重点
为应对日益加剧的商业竞争,企业不断增加内部IT及信息系统,使企业的商业数据成几何数量级不断递增,如何能够从这些海量数据中获取更多的信息,以便分析决策将数据转化为商业价值,就成为目前数据库厂商关注的焦点。各数据库厂商在新推出的产品中,纷纷表示自己的产品在商业智能方面有很大提高。如:微软最新版SQL Server 2005就集成了完整的商业智能套件,包括数据仓库、数据分析、ETL工具、报表及数据挖掘等,并有针对性的做了一些优化。如何更好的支持商业智能将是未来数据库产品发展的主要趋势之一。
(3)、SOA架构支持
SOA已经成为目前IT业内的一个大的发展趋势,最初IBM和BEA是该理念的主要推动者,后来有越来越多的企业加入,开始宣称支持SOA,其中包括Oracle,而微软开始并不是非常赞同SOA的,但是,随着时间的发展,目前国内主流的数据库厂商都开始宣称他们的产品是完全支持SOA架构的,包括微软的SQL Server 2005,从微软态度的转变可以看出,未来IT业的发展与融合,SOA正在成长为一个主流的趋势。
本文仅对数据库管理系统的现状以及一些重要的发展方向作一简要综述,并不具体对一些技术内容进行深入探讨,每一个方向的研究课题都可以充分地展开。
1、主流产品的发展现状
数据库管理系统经历了30多年的发展演变,已经取得了辉煌的成就,发展成了一门内容丰富的学科,形成了总量达数百亿美元的一个软件产业。根据Gartner Dataquest公司的调查,2000年国际数据库市场销售总额达88亿美元,比1999年增长10%。根据CCID的报告,2000年的中国数据库管理系统市场销售总额达24.8亿元,比1999年增长了41.7%,占软件市场总销售额的10.8%。可见,数据库已经发展成为一个规模巨大、增长迅速的市场。
目前,市场上具有代表性的数据库产品包括Oracle公司的Oracle、IBM公司的DB2以及微软的SQL Server等。在一定意义上,这些产品的特征反映了当前数据库产业界的最高水平和发展趋势。因此,分析这些主流产品的发展现状,是我们了解数据库技术发展的一个重要方面。
2、关系数据库技术仍然是主流
关系数据库技术出现在20世纪70年代、经过80年代的发展到90年代已经比较成熟,在90年代初期曾一度受到面向对象数据库的巨大挑战,但是市场最后还是选择了关系数据库。无论是Oracle公司的Oracle 9i、IBM公司的DB2、还是微软的SQL Server等都是关系型数据库。Gartner Dataquest的报告显示关系数据库管理系统(RDBMS)的市场份额最大,2000年RDBMS的市场份额占整个数据库市场的80%,这个比例比1999年增长了15%。这组数据充分说明RDBMS仍然是当今最为流行的数据库软件。当前,由于互联网应用的兴起,XML格式的数据的大量出现,学术界有一部分学者认为下一代数据库将是支持XML模型的新型的数据库。作者对此持否定态度,认为关系技术仍然是主流,无论是多媒体内容管理、XML数据支持、还是复杂对象支持等都将是在关系系统内核技术基础上的扩展。
3、产品形成系列化
一方面,Web和数据仓库等应用的兴起,数据的绝对量在以惊人的速度迅速膨胀;另一方面,移动和嵌入式应用快速增长。针对市场的不同需求,数据库正在朝系列化方向发展。例如IBM公司的DB2通用数据库产品包括了从高端的企业级并行数据库服务器,到移动端产品DB2 Everywhere的一整套系列。从支持平台看,今天的DB2已经不再是大型机上的专有产品,它支持目前主流的各种平台,包括Linux和Windows NT。此外,它还有各种中间件产品,如DB2 Connect、DB2 Datajointer、DB2 Replication等,构成了一个庞大的数据库家族。
4、支持各种互联网应用
数据库管理系统是网络经济的重要基础设施之一。支持Internet(甚至于Mobile Internet)数据库应用已经成为数据库系统的重要方面。例如,Oracle公司从8版起全面支持互联网应用,是互联网数据库的代表。微软公司更是将SQLServer作为其整个.NET计划中的一个重要的成分。对于互联网应用,由于用户数量是无法事先预测的,这就要求数据库相比以前拥有能处理更大量的数据以及为更多的用户提供服务的能力,也就是要拥有良好的可伸缩性及高可用性。此外,互联网提供大量以XML格式数据为特征的半结构化数据,支持这种类型的数据的存储、共享、管理、检索等也是各数据库厂商的发展方向。
5、向智能化集成化方向扩展
数据库技术的广泛使用为企业和组织收集并积累了大量的数据。数据丰富知识贫乏的现实直接导致了联机分析处理(OLAP)、数据仓库(Data Warehousing)和数据挖掘(Data Mining)等技术的出现,促使数据库向智能化方向发展。同时企业应用越来越复杂,会涉及到应用服务器、Web服务器、其它数据库、旧系统中的应用以及第三方软件等,数据库产品与这些软件是否具有良好集成性往往关系到整个系统的性能。Oracle公司的Oracle 9i产品包括了OLAP、数据挖掘、ETL工具等一套完整的BI(商业智能)支持平台,中间件产品与其核心数据库具有紧密集成的特性,Oracle Application Server增加的一项关键功能是高速缓存特性,该特性可以将数据从数据库卸载到应用服务器,加速Web用户对数据的访问速度。IBM公司也把BI套件作为其数据库的一个重点来发展。微软认为商务智能将是其下一代主要的利润点。
6、数据库技术的发展趋势
数据、计算机硬件和数据库应用,这三者推动着数据库技术与系统的发展。数据库要管理的数据的复杂度和数据量都在迅速增长;计算机硬件平台的发展仍然实践着摩尔定律;数据库应用迅速向深度、广度扩展。尤其是互联网的出现,极大地改变了数据库的应用环境,向数据库领域提出了前所未有的技术挑战。这些因素的变化推动着数据库技术的进步,出现了一批新的数据库技术,如Web数据库技术、并行数据库技术、数据仓库与联机分析技术、数据挖掘与商务智能技术、内容管理技术、海量数据管理技术等。限于篇幅,本文不可能逐一去展开来阐述这些方面的变化,只是从这些变化中归纳出数据库技术发展呈现出的突出特点。
“四高”即DBMS具有高可靠性、高性能、高可伸缩性和高安全性。数据库是企业信息系统的核心和基础,其可靠性和性能是企业领导人非常关心的问题。因为,一旦宕机会给企业造成巨大的经济损失,甚至会引起法律的纠纷。最典型的例子就是证券交易系统,如果在一个行情来临的时候,由于交易量的猛增,造成数据库系统的处理能力不足,导致数据库系统崩溃,将会给证券公司和股民造成巨大的损失。在我国计算机应用的早期,由于计算机系统还不是企业运营必要的成分,人们对数据库的重要性认识不足,而且为了经费上的节约常常采用一些低层次的数据管理软件,如dBASE等,或者盗版的软件。但是,随着信息化进程的深化,计算机系统越来越成为企业运营的不可缺少的部分,这时,数据库系统的稳定和高效是必要的条件。在互联网环境下还要考虑支持几千或上万个用户同时存取和7x24小时不间断运行的要求,提供联机数据备份、容错、容灾以及信息安全措施等。
事实上,数据库系统的稳定和高效也是技术上长久不衰的追求。此外,从企业信息系统发展的角度上看,一个系统的可扩展能力也是非常重要的。由于业务的扩大,原来的系统规模和能力已经不再适应新的要求的时候,不是重新更换更高档次的机器,而是在原有的基础上增加新的设备,如处理器、存储器等,从而达到分散负载的目的。数据的安全性是另一个重要的课题,普通的基于授权的机制已经不能满足许多应用的要求,新的基于角色的授权机制以及一些安全功能要素,如存储隐通道分析、标记、加密、推理控制等,在一些应用中成为切切实实的需要。
“互联”指数据库系统要支持互联网环境下的应用,要支持信息系统间“互联互访”,要实现不同数据库间的数据交换和共享,要处理以XML类型的数据为代表的网上数据,甚至要考虑无线通讯发展带来的革命性的变化。与传统的数据库相比,互联网环境下的数据库系统要具备处理更大量的数据以及为更多的用户提供服务的能力,要提供对长事务的有效支持,要提供对XML类型数据的快速存取的有效支持。
“协同”面向行业应用领域要求,在DBMS核心基础上,开发丰富的数据库套件及应用构件,通过与制造业信息化、电子政务等领域应用套件捆绑,形成以DBMS为核心的面向行业的应用软件产品家族。满足应用需求,协同发展数据库套件与应用构件,已成为当今数据库技术与产品发展的新趋势。规划中的Oracle11i的主要扩展方面据称主要也是各种面向应用套件的支持。