XML数据库发展路在何方?(1)

http://developer.51cto.com  2008-11-04 09:43  阿四  IT专家网论坛  我要评论(0)
  • 摘要:自从1995年XML技术的研究和开发逐渐升温以来,形形色色的XML查询语言不断问世,虽然学术界和工业界对XML数据库的研究和开发并不完全一致,但是两者的目标却非常相似:解决现有问题,扩展应用领域。
  • 标签:XML数据库  XML数据  XML

虽然学术界和工业界对XML数据库的研究和开发并不完全一致,但是两者的目标却非常相似:解决现有问题,扩展应用领域。

一.学术界与工业界的两种不同索求

Ronald Bourret 在他那篇著名的《XML Database Products》中,将XML数据库产品分为中间件(Middleware)、支持XML的数据库(XML-Enabled Databases)、纯XML数据库(Native XML Databases)、XML服务器(XML Servers)、Wrappers、内容管理系统(Content Management Systems)、XML查询引擎(XML Query Engines)、XML Data Binding、Discontinued products等九种,在业界影响很大。但是,在XML数据库的研究和开发人员眼里,或许只有支持XML的数据库、纯XML数据库能够称得上是真正意义上的XML数据库。支持XML的数据库可以被看做是支持XML数据的数据库系统,它可能是关系数据库、对象数据库等。就在一年半以前,还有相当多的人在争论关系库支持的XML数据库和纯XML数据库孰优孰劣的问题。但是,纯XML数据库却在这种争论中悄然进步,在技术上有了长足的发展。

人们已经越来越倾向于认为XML数据库就是纯XML数据库。随着金融界确立XBRL(XML的一个子集)标准和政府规范电子政务的XML格式,实践推动着XML数据库技术不断向前发展。

XML数据库系统从最初简单的查询引擎,不断地加入查询优化、事务处理、触发器、并发控制、代数系统等传统的数据库技术,一步步地从性能和功能上完善自己。

从目前XML数据库的产品情况来看,学术界的实验系统和市场产品之间有着些许微妙的差别,尽管它们的主流技术是一致的。

学术界完成的实验室原型系统一般侧重于下面的一些特点:

● 专注于查询性能的提高,对查询优化的研究较多。为了提高查询效率,学术界十分重视索引结构的设计,先后提出二十几种适合于XML数据的索引方式,比如影响很大、简单易用的三元组索引,并在此基础上开发出了以结构化联接为基础的查询模式匹配方法。

● 强调平台无关性。在XML数据库研究的早期,业界曾存在一个争论:到底将XML数据存储在关系库中,还是另外开发存储XML的物理数据库。这在一定程度上影响着XML的研究者,在设计索引结构时必须考虑使索引过的XML数据可以存储在多种数据库结构中。

● 从理论的角度较多地考虑了XML数据库的模式设计规范化问题。设计了基于键的函数依赖推理,在如何优化XML数据库设计、消除数据冗余和不一致方面有了一些实质上的进展。

工业界的XML数据库产品更加强调实用,有着一些与学术界原型系统不尽相同的特点:

● 现有的主流XML数据库产品都在底层提供collection数据结构,以存储XML元素节点,通过B+树结构来索引这些元素节点。这一点与关系库系统的底层处理如出一辙。在collection之上一般还会有一级或两级索引,以加快查询处理速度。这一点比平台无关的实验原型系统更高效实用。

● 市场上的数据库产品通过引入日志管理,建立了较完善的事务处理机制,这为上层的数据库应用开发提供了便利。目前的商用XML数据库一般提供事务处理功能,包括提交、回滚和日志文件。通过提供事务日志机制,纪录系统执行的每个事务的详细情况,保证在系统出现问题后可以完全恢复。

● 增强了对异构数据源的集成管理。树型结构的XML数据有其难以管理的一面,但是,XML技术的可扩展性又使得它具有集成异构数据源的强大能力。因此,市场上的XML数据库产品普遍具有较强的集成多种数据源的功能。这也是当前市场上的XML数据库产品的一大亮点。

二.实验室的原型系统和商用化产品

最近几年以来,在学术界和工业界的共同推动下,如雨后春笋般诞生出大量的XML数据库原型系统和商用产品。

在Ronald Bourret的《XML Database Products》中一共列了36种XML数据库产品,大致上可分为三大类型:

● 商业类(commercial):如Ipedo、Tamino、Natix、Xyleme等。其中,美国Ipedo公司的Ipedo XML Database和德国Software AG公司的Tamino是其中的佼佼者,成为目前市场上的主流产品。

● 研究类(research):如Stanford大学早期开发的Lore等。

● 开放源码类(open source):其中影响较大的是Berkeley DB XML、dbXML、XDB和Xindice。

需要指出的是, Lore database systems 只是Stanford大学早期针对半结构化数据而开发的数据库系统。Lore连同其专设语言Lorel都是为半结构化数据而写的。尽管说XML数据在某种程度上也是一种半结构化数据,但是,两者之间还是有着一些差别,导致Lore database systems很难成为一种完全意义上的XML数据库系统。

事实上,在学术界,真正受到关注的XML数据库原型系统有三家:密歇根大学安阿伯分校的Timber、西雅图华盛顿大学的Tukwila和威斯康星大学麦迪逊分校的Niagara。其中,影响最大的是Timber,在该系统的实施过程中,产生了许多有关XML数据库的新的概念和方法。当然,多伦多大学的Tox也是一个相当不错的系统,尤其是其出色的索引结构。但是,总体上不如前面的三家有名。


共3页: 1 [2] [3] 下一页
【内容导航】
 第 1 页:学术界与工业界的不同索求  第 2 页:核心技术的进展
 第 3 页:代数系统和模式规范化
文档格式标准开战 OOXML成国际标准
XML可扩展标识语言详解
Scala编程语言
大型网站架构技术专家谈
ASP.NET视频教程
 
 验证码: (点击刷新验证码)   匿名发表
  • 亮剑.NET. 图解C#开发实战

  • 作者:李新峰 付志涛 缪勇
  • 本书采用全新的图解思路,分3篇介绍使用微软C#语言开发实际应用程序的基本知识。第1篇包括10章,介绍了C#语言的基础知识,主要..
Copyright©2005-2009 51CTO.COM 版权所有