四个主流的Native-XML数据库

四个主流的Native-XML数据库

作者: 雨水   日期: 2007-03-22   转载请注明出处http://blog.csdn.net/gobitan  

随着XML日益广泛的应用,XML数据存储的问题摆在了我们的面前。如何有效地管理大量的XML文档是亟待解决的问题。

最初,通常的做法是先把XML数据转换为关系映射将其存入关系数据库中,写入和读出都要进行相应的转换。但是随着XML数据量的日益增加,这显然不是最好的解决办法。于是诞生了专门为XML文档存储设计的Native-XML数据库,也被称为原生XML数据库或纯XML数据库。

本文介绍了四个主流的Native-XML数据库,并略作比较,以为需要大量存储XML数据的用户提供Native-XML数据库的选择参考。

 

Tam in o数据库系统

Tam in oSoftware AG公司提供的原生XML数据库服务器产品,它于1999年发布第一个版本。Tam in oXML文档以原生的方式存储在Tam in o数据库中,而不是映射到其他的数据库模型。

Tam in o数据库具有以下特点:

1)支持HTTP方方法GETPUTDELETEHEAD读取文档、存储或替换文档、删除文档那个和取得文档的有关信息,并支持SSL安全机制;

2)提供JavaActiveXJavaScript.net等语言的API访问;

3)支持XML Schema模式验证;

4)也可存储其他类型的对象,如图像、声音文件、Word文档、HTML页面文件等;

5)方便与其他数据库进行集成与数据转化;

6)支持XQuery查询语言;

7)提供图形界面和命令行方式的交互。

Tam in o XML服务器提供了用于处理XML的现代数据库系统必需的完整功能。它支持一个数据库系统所应该具有的所有特性,包括多用户操作、事务支持、强大的备份功能,海量处理能力、可扩充性和高性能。

 

eXist数据库系统

eXistz是一个开放源代码的纯XML数据库系统,于2001年开始研究。

eXist数据库具有以下特点:

1)完全用Java语言实现;

2)不支持XML Schema模式验证;

3)支持XPath查询;

4)支持可插拔的存储后端,即后端既可以纯XML数据库也可以是关系数据库;

5)支持HTTPXML-RPCSOAPWebDAV接口访问和Java专用的XMLDB API

 

X in dice数据库

X in dice是一个开放源码的Native-XML数据库。它也是Apache自由软件基金会下的一个项目。X in dice可以以XML本身的格式存储和检索XML数据,它有个缺点是不能处理较大的XML文档数据。这个大小没有严格的定义,通常 1M 字节以上的就可以认为比较大。

X in dice具有以下特点:

1)完全用Java语言写成,因此需要JDK的支持;

2)支持DOMSAX编程接口;

3)仅支持well formedXML文档,不支持Schema验证。

4)提供Java语言的XML:DB API接口和其它语言的XML-RPC的接口;

5)提供命令行管理工具。

X in dice目前已经足以运用于一般的内容管理系统,但其不支持XML校验和不能处理较大的XML文档,因此在大型应用中有所限制。

 

Berkeley DB XML嵌入式数据库

Berkeley DB XML是一个开放源码的嵌入式Native-XML数据库。它是在Berkeley DB(一种通用的嵌入式数据库引擎)的基础上开发而成。Berkeley DB XML存储XML文档,对它们进行索引并提供一个XPath检索接口。XML文档被组织在不同的容器内,这些容器可以共用一个通用的模式定义或者不规定特定的模式。

Berkeley DB XML数据库具有以下特征:

1)它是一个库而不是一个数据库服务器,它与应用程序运行在同一个进程;

2)提供基于XQuery的接口访问存储;

3)支持XML Schema验证;

4)对外提供编程接口API支持C++JavaPerlPythonPHPTclRuby等语言;

5)开放源代码、底层采用C/C++语言实现;

6)支持操作系统包括 W in d owsL in uxBSDUNIXMac OS/X和任何POSIX兼容的操作系统;

7)提供命令行方式与数据库进行交互操作。

8)支持大用户量的并发访问,存储容量可达256TB

Berkeley DB XML也是Oracle数据库产品解决方案的一部分,这一点表明它的可用性及性能上值得信赖。

 

四个Native-XML数据库简单比较

Tam in o是个功能强大的商业Native-XML数据库产品,而且提供图形界面。缺点是要花钱^_^eXistX in dice都是完全用Java语言写的开源数据库,eXist更适合用于管理以文档为中心的XML数据,X in dice不适合 大文 档的处理,它们两者差不多在内容管理领域都有应用。Berkeley DB XML的功能比较强大,支持Schema验证是其优点之一。Berkeley DB XML嵌入式数据库跟应用程序运行在相同的地址空间,因此它既可以支持小的、但用户应用程序,又支持拥有大量内存和硬盘空间的多处理器计算机上处理数以千计的并发用户访问。

 

作者水平有限,如有不妥之处欢迎评论或来邮探讨。

 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gobitan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值