查看: 2948|回复: 0

第三代数据库与多维数据库

[复制链接]

该用户从未签到

发表于 2008-3-29 16:45:11 | 显示全部楼层 |阅读模式
分享到:
随着网络应用的发展与普及,我们正步入一个后关系数据库时代。那么,究竟什么是后关系型数据库?它和关系数据库有何区别?为了迎接后关系数据库时代,我们应该做好哪些准备呢?本文中,我们将就此做个简单介绍。



关系型数据库的发展及数据库技术的演变

20世纪70年代 以技术为中心

20世纪80年代 以用户为中心

20世纪90年代后期 以网络为中心

关系数据库的发展历史

20世纪70年代 前关系型

20世纪80年代 关系型

20世纪90年代后期 后关系型

以技术为中心的前关系型数据库

• 在二十世纪七十年代,数据库的实现方案都把注意力集中在能提供联机的对信息的访问技术,着眼于获得处理效率,并尽可能最少使用价格昂贵的计算机硬件。



• 那时,能够为特殊硬件平台优化的那些由厂商专卖的即非开放式的数据库,是早期阶段用户唯一可能做出的选择。

以用户为中心的关系型数据库

• 二十世纪八十年代,硬件价格下降和个人计算机逐步普及,用户的信息需求显著上升,应用软件的开发生产效率成为关键的成功因素。



• 带有易于理解的、简单的、两维数据模型的关系型数据库管理系统,成为服务于用户查询和满足这类需求的大量报表生成的基础,并得到了广泛采用。

以网络为中心的后关系型数据库

• 进入二十世纪九十年代后,大量图形化用户界面被应用系统普遍采用,而且Internet得到了迅猛发展,应用系统的架构从采用C/S结构转变为以Web应用为主的处理阶段。



• 随着经济向全球化发展,现代化企业为了要在竞争中取得成功,它们的业务活动已经和日益增加的复杂事务交易应用紧密地联系在一起。

• 企业级的运作活动已涉及巨大数量的数据的采集和利用,越是有能力将更多的用户连接到更多的应用系统功能上去,就越能取得更大的、竞争上的优势。



• 以往的关系数据库系统本身具有的限制,使它难以适应建立以网络为中心的、企业级快速事务交易处理应用的需求,而后关系型数据库技术能为网络为中心环境提供所需的性能、扩展性、互操作性和安全性。



前关系型数据库

七十年代以前,数据库系统并没有一个完整和坚固的数学理论基础,数据库产品直接按实际应用的要求来设计。这段时期的数据库产品以层次型数据库系统为主。业界把这段时期的产品称为“前关系型数据库系统(pre-relational database)”时期。这个时期的计算机信息处理是在大型机系统上进行的,数据访问的方法主要是局限于IT专家们。数据库一般是用户自主研发和被认为是专用的,能有效存取数据并需要专业知识。如果一个用户需要一个特别的报表,他必须工作繁重的数据库管理员来编写,而经常报表会不能及时得到而影响了决策。



关系型数据库

• 1970年,IBM公司的研究员科德(Codd)发表了题为《大型数据库的数据关系模型》的文章。从此,数据库系统的发展进入了“关系型数据库系统(relational database)”时期。关系型数据库系统以关系代数为理论基础,经过几十年的发展和实际应用,技术越来越成熟和完善。其代表产品有Oracle、IBM公司的DB2、微软公司的MS SQL Server以及Informix等。

• 这个时期的数据库提供了用户从桌面访问中心数据库的需求而不断成熟和增长。用户希望按照自已的需求生成报表和随意访问及查询数据库。关系型技术引入了查询语言SQL,这种语言允许用户用统一的语言来访问类别丰富的数据。SQL用一种非常标准和简单的格式工作:只有行和列的二维 数据表。SQL成为了行业标准,允许用户自己提取数据并产生报表。

• 这种简单的数据模型允许用SQL来访问数据库,给用户带来了便捷也付出了代价,因为带有复杂继承关系的数据不能简单地被划分为行和列,数据经常会被划分到很多个表里,然后需要完成一个简单的任务时,又要被“join”在一起。这样往往导致了两个问题:

a 查询因需要“join”多个表而变得比较烦琐 ,查询语句(SQL) 不好编程;

b 数据处理的开销往往因关系型数据库要访问复杂数据而变得很大。

• 关系型数据库依据的是把数据表示为简单的两维模型,即表示为行与列的记录来进行存储处理。显然由于受到当时条件的限制,只是一种适合于对简单数据存储处理的技术,存在难以克服的局限性。

• 关系型数据库管理系统本身固有的局限性,表现在以下三个方面:

(1)数据模型上的限制

A关系数据库所采用的两维表数据模型,不能有效地处理在大多数事务处理应用中,典型存在的多维数据。其不可避免的结果是,在复杂方式下,相互作用表的数量激增,而且还不能很好地提供模拟现实数据关系的模型。



B关系数据库由于其所用数据模型较多,还可能造成存储空间的海量增加和大量浪费,并且会导致系统的响应性能不断下降。而且,在现实数据中,有许多类型是关系数据库不能较好地处理的。

(2)性能上的限制

为静态应用例如报表生成,而设计的关系型数据库管理系统,并没有经过针对高效事务处理而进行的优化过程。其结果往往是某些关系型数据库产品,在对GUI和Web的事务处理过程中,没有达到预期的效果。除非增加更多的硬件投资,但这并不能从根本上解决问题。



用关系数据库的两维表数据模型,可以处理在大多数事务处理应用中的典型多维数据,但其结果往往是建立和使用大量的数据表格,仍很难建立起能模拟现实世界的数据模型。并且在数据需要作报表输出时,又要反过来将已分散设置的大量的两维数据表,再利用索引等技术进行表的连接后,才能找到全部所需的数据,而这又势必影响到应用系统的响应速度。

(3)扩展伸缩性上的限制

关系数据库技术在有效支持应用和数据复杂性上的能力是受限制的。关系数据库原先依据的规范化设计方法,对于复杂事务处理数据库系统的设计和性能优化来说,已经无能为力。此外,高昂的开发和维护费用也让企业难以承受。

除此之外,关系数据库的检索策略,如复合索引和并发锁定技术,在使用上会造成复杂性和局限性。

后关系型数据库

后关系型数据库

• 早在70年代后期,人们就已经开始涉足了,只是当时并没有被明确称为“后关系型数据库”。一位名为P.Chen的人在1976年就提出了实体-关系数据模型。由于当时还是网状数据库、层次数据库和关系数据库并存的时候,P.Chen提出的数据库概念,只是希望能将传统的3种模型的数据库统一到实体-关系数据模型上。后关系型数据库也只被作为一种概念型的模型而使用。

• Internet的异军突起以及XML语言的出现,给数据库系统的发展开辟了一片新的天地。九十年代末,随着德国软件股份公司(Software AG)宣布世界上第一个“原状XML数据库系统(Native XML Database System)”产品问世,数据库系统进入了一个新的发展时期。

• 后关系型数据库的主要特征是将多维处理和面向对象技术结合到关系数据库上。这种数据库使用强大而灵活的对象技术,将经过处理的多维数据模型的速度和可调整性结合起来。由于它独有的可兼容性,对于开发高性能的交换处理应用程序来说,后关系型数据库非常理想.

• 在后关系型数据库管理系统中,采用了更现代化的多维模型,作为数据库引擎。并且,这种以稀疏数组为基础的独特的多维数据库架构,是从已成为国际标准的数据库语言基础上继承和发展的,是已积累了实践经验的先进而可靠的技术。

• 后关系型数据库提供了一种实际可行的解决方案,能够更加适合当前用户的真实需要。用对象访问方式或者用SQL方式,可以直接实现对数据的访问。

• 多维数据模型能使数据建模更加简单,因为开发人员能够方便地用它来描述出复杂的现实世界结构,而不必忽略现实世界的问题,或把问题强行表现成技术上能够处理的形态,而且多维数据模型使执行复杂处理的时间大大缩短。例如开发一个服装连锁店信息管理系统时,如果用关系数据库,就需要建立许多表,一张表用来说明每种款式所具有的颜色和尺寸,另一张表用来建立服装和供应商之间的映射,并表示它是否已被卖出,此外还需要建一些表来表示价格变化、各店的库存等等。每成交一笔生意,所有这些表都需要修改,很快这些关系数据库就会变得笨重而缓慢。而在多维数据模型中,可以将这些数据看做是存在于一个“立方体”中,这个“立方体”有足够多的“面”,以便对数据进行完全分类,如款式、颜色、价格、库存等等都能够立刻互相映射,获取数据极其迅速,而且由于清除了冗余的数据,多维数据库非常简单,不仅好用,而且更经济。

• 面向对象技术使用丰富的数据类型来反映现实世界的数据关系,由于它本身具有的模块化和强有力的内部操作能力,能够有效地提高开发者的生产率。面向对象技术的产生是由于人们认识到,人类考虑问题时,想到的不是整数、字符串或其他计算机数据类型,而是一个个的对象。比如说汽车,人们每天驾驶、购买和谈论它时,并不需要深入了解内燃机的物理过程。使用对象技术,计算机也可以只“谈论”“汽车”,而不必理会潜在的各种细节。这样,一种强大的新编程方法就产生了。对象是模块化的,任何对象都可以内部发生变化,而不影响外部的其他编码。对象的这种模块化能力大大简化了应用程序的升级和维护处理。此外,对象还是内部可操作的。一个对象建立后,它就可以被其他的应用程序理解、使用甚至更改,而不管这些应用程序使用的是哪种程序设计语言。

后关系型数据库的领头军Caché

Caché的历史

当关系数据库厂商纷纷走向低迷状态之际,执M技术发展牛耳的美国InterSystems公司,却于1997年推出了具有自己鲜明特色的Caché数据库,它既不是关系数据库或对象-关系数据库,也不同于一般的对象数据库,Caché是新型的后关系型数据库(Post-Relational Database)。这种数据库已经超越了传统关系数据库的局限,在Internet或Client/Server环境下任务关键和突发大负载的情况下,Caché具有独特超群的高响应速率特性、高度灵活的可伸缩性能、高强度联机处理能力。
在选择数据库平台时,Caché迅速成为世界上许多国家在医疗领域中最优先采用的主流数据库。

Caché的发展

• 在InterSystems 全球业务里,有50%是医疗行业,30%在金融业、另外20%在船务、饭店管理、会议系统等方面。所有这些行业都有一个共同点,都需一个庞大的数据库,数据需要很快更新。国外的成功案例已经有许多,如:美国十大医院、三大医疗卫生实验机构、全球最大的在线证券交易公司、美林投资集团、美国国防部等均采用了Caché数据库;国内目前也有一些应用,但主要限于医疗行业,如:北京安贞医院、福州军区总医院和哈尔滨医科大学第一附属医院等。 Caché数据库在医疗行业已经获得成功,所以在开拓市场的时候,会首先选择自己的强项。

Caché的现状

• 根据最新的IDC报告,在全球嵌入式数据库市场中,2003年后关系型数据库增长率最高,达到11%,市场容量达11.28亿美元。同时,以研制Caché后关系型数据库的InterSystems公司,以38%的增长率超过所有其它嵌入式数据库提供商,其1.41亿美元的年收入已超越甲骨文,成为全球第二大嵌入式数据库提供商。IDC报告指出:“由于IT系统正快速向面向服务的架构(SOA)发展,Caché将在该领域获得更多的市场份额。”

Caché的特点

• 利用多维数据模型更直接更自然描述实际数据关系,根本不需要像传统关系数据库那样去拆成大量两维表格因而能彻底解决解决因要联结大量表格而造成系统速度性能低下和容易死锁等弊病。

• 为应用软件开发者提供了多种新的开发环境与工具,使他们能运用对象技术等先进开发数据库服务器端的应用;又能使他们能继续使用和发挥原先已具备的技术专长,在选择用于设计客户端界面的开发工具上享有充分的灵活性。由于采用对象技术能加快应用软件开发速度、缩短开发周期、又能便于应用软件日后的修改与扩展。

• 在体系结构上的灵活性也使基于Caché数据库的应用软件不仅可以不经修改便能在多种操作系统平台上(如Windos98/NT、各种UNIX和Linux环境下运行,也可以随意布署运行在两层或三层的C/S结构即客户机/服务器环境中,或者B/S结构即浏览器/服务器环境中。而且应用服务器和数据库服务器的数量是在运行中是随意可以增加扩充而不影响运行。

• 与此同时,Caché又是一个可靠实用的高性能分布式数据库。它是在以往多年ANSI和ISO的标准M技术成功基础上发展起来的。具有突出的可靠性和可移植性。
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /2 下一条



手机版|小黑屋|与非网

GMT+8, 2024-5-6 21:46 , Processed in 0.112275 second(s), 15 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.