您所在的位置:开发 > 微软平台和开发技术专区 > XML开发 > XML数据库发展路在何方?(3)

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

2008-11-04 09:43 阿四 IT专家网论坛 我要评论(0) 字号:T | T
一键收藏,随时查看,分享好友!

自从1995年XML技术的研究和开发逐渐升温以来,形形色色的XML查询语言不断问世,虽然学术界和工业界对XML数据库的研究和开发并不完全一致,但是两者的目标却非常相似:解决现有问题,扩展应用领域。

AD:

4.事务处理和版本控制

目前的商用XML数据库一般提供事务处理功能,包括提交、撤回和日志文件。我们知道,事务为数据库的一组操作,这些操作组成一个逻辑单元,执行时要么全部完成,要么全部不做(do all or do nothing)。XML数据库通过提供事务日志机制,纪录系统执行的每个事务的详细情况,保证在系统出现问题后可以完全恢复。

事务遵循的ACID性质 (原子性、一致性、独立性和持久性) 保证了大部分事务处理稳定地运行。

商用XML数据库也包含对XML文档的版本控制功能。使用版本控制,用户或应用程序可以检入(check in)或检出(check out)XML文档,利用版本号、日期或者标签获得以前版本的文档,以及显示XML文档的版本历史信息。每一个处于版本控制之下的文档都有自己的历史信息,纪录了修改文档的作者以及时间等。使用者可以根据文档或用户或日期来查看整个的版本历史信息。

版本控制允许用户通过查询更新原信息。通过更新引擎可以注释、修改和精炼信息。内置的版本系统跟踪信息的变化,提供这些变化的历史信息。

应该说,在事务处理和版本控制机制上,实验室产品的考虑是不够的,所提供的事务处理的功能显得简单。尽管加州大学洛杉矶分校的数据库实验室在XML的版本控制方面有一些突出的成果,但是,目前尚未形成产品。

还有一个需要说明的是多事务并发控制机制和加锁协议。这项技术的研发目前刚刚起步。现今的商用XML数据库只在逻辑层面提供并发加锁协议,但粒度为整个文档。随着单个XML文档的增大,这个粒度显然太粗。这一点可能要等待研究界开发出粒度为文档元素节点的并发协议了。

5.代数系统和模式规范化

代数表达式和数据库模式设计理论曾经是关系数据库理论的精髓。代数系统成为关系库查询优化的重要工具,而范式理论的提出也曾为RDBMS设计优化的库结构提供了依据。那么,人们不禁要问,在XML数据库中是否存在相类似的理论和方法?

由于这两个问题有一定的难度,注定只能是由学术界的实验系统先行一步。

学术界公认的三大实验系统都设计了相应的代数系统,其中影响最为广泛的是Timber中实现的TAX(Tree Algebra for XML)。TAX以整个文档树作为操作的基本单位,在逻辑层提供选择、投影、联接等类似关系库的9种基本操作和5种附加操作,以匹配模式树得到实例树(witness tree)为基本操作方法。在物理层提出7种基本操作实现上述逻辑运算。

Timber依据TAX对XML查询语句进行改写和优化,但是效果并不理想。业界对TAX存在问题的看法是,过分地模仿了关系库的代数系统而忽略了对XML文档本身特点的考虑。

XML模式规范化理论的早期开拓者是宾夕法尼亚大学的樊文飞等人。从定义XML的键(key)和函数依赖,到XML和DTD范式,再到基于约束的XML数据库的模式规范化,XML数据库的模式规范化理论在稳步地推动着。国内的复旦大学数据库研究中心等单位也有着不错的研究进展。在未来两年内,估计会有较成熟的XML数据库模式设计理论投入到实验室产品和商用系统中。

6.多数据源的集成

多数据源的集成是数据库市场对XML数据库系统提出的要求。从1970年IBM公司的E.F.Codd提出关系数据库的概念以来,关系数据库在几乎所有的应用领域都取得了巨大成功。XML数据库是一个新事物,它从诞生的那一天起,就面临着关系数据库一统天下的局面。有人说,关系数据库完全战胜层次和网状数据库用了将近20年时间,XML数据库也会用20年时间战胜关系数据库。这种看法并不全面。至少从目前来看,两者应该各展所长,共同服务于巨大的数据库市场。

那么,XML数据库的优势在哪呢?用XML技术来进行多数据源的集成就是其中之一。

从2001年以后,面对多数据源的集成这个传统关系型数据库系统做不了的事情,Ipedo等商用数据库系统将自己的数据库系统扩展为一个集成平台,它可以将关系数据库系统、MIS系统、OA系统、文件系统等集成在同一个平台上,给用户提供统一的界面。如Ipedo公司的Ipedo XML智能平台,为用户提供XML View来统一访问底层的异构数据。人们也从这一点上进一步看到了XML技术的力量。

四.未来的技术发展方向

经过近5年业界同仁的共同努力,XML数据库技术取得了很大的进展,已经有若干种XML数据库产品问世并服务于社会生活的各个方面。但是,XML数据库的事业才刚刚开始,还有很多问题等待着我们去解决。

未来几年,XML数据库技术有可能在下述方面取得进展:

● 异构数据源的集成。XML数据库对多数据源的集成,是对XML技术可扩展性这一长处的极好发挥。但是,就目前的集成程度和在应用层上所提供的功能来看还是远远不够的。如何从对数据的集成过渡到对系统的集成,从而在远景目标上实现类似于网格计算(grid computing)概念的系统,恐怕是XML数据库工作者的核心任务之一。

● 底层索引结构。目前的商用XML数据库系统优于实验室原型系统的特点之一就是其底层的索引结构。但是,现有的商用XML数据库的底层索引结构一般都是B+树。虽然B+树索引是一种成熟的索引结构,但是,研究结果显示,在XML数据库中,它的性能表现并不是最好的。学术界已经开发出了若干种适用于XML数据的索引结构,如XR树、XB树等,需要XML数据库工作者来进一步关注。

● 并发加锁协议。在现有的XML数据库系统中,加锁的粒度是整个文档,事务并发的层次也在文档一级。随着应用级文档的日益增大,这个粒度在一定程度上将会成为系统效率的瓶颈。如何通过边锁(edge lock)机制来实现元素节点级粒度的加锁?这一工作现在吸引了不少研究者的目光,而且,上述的锁协议是在逻辑层,如何将它映射到底层的B+树索引(或者XR树索引)上,也是必须要做的一件事情。

● XML模式规范化是一个值得关注的方向。一旦取得突破,将会使我们可以像在关系库中那样方便地设计XML数据库的结构,消除数据的冗余和不一致现象。目前,这一领域已经成为学术界关注的热点。但是,完整的、为业界所公认的理论体系尚未建立。

【编辑推荐】

  1. 由数据库数据生成XML的方法
  2. XML技术与数据库的发展趋势分析
  3. XML数据库发展迅猛
【责任编辑:李明源 TEL:(010)68476606】

分享到:

网友评论TOP5

查看所有评论(

提交评论

栏目热门

更多>>

  1. 专题:JVM编程语言,你的选择?
  2. 宅男程序员给老婆课程之11:域模型

文章排行

本月本周24小时

热点专题

更多>>

读书

Linux安全体系分析与编程
本书选择经典的开放源代码,全面系统地分析了Linux安全机制。本书共有17章,前10章着重介绍了Linux操作系统的安全机制及实现方法

51CTO旗下网站

领先的IT技术网站 51CTO 领先的中文存储媒体 WatchStor 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 移动互联网生活门户 灵客风LinkPhone