哪个免费的本地XML数据库最受欢迎?

8
如果我问最受欢迎的免费关系型数据库,我期望得到的是MySQL、PostgreSQL或SQLite。但是原生XML数据库呢?哪一个最受欢迎和稳定?你在一些项目中使用过吗?使用了哪一个?你会建议哪一个用于个人中等规模的项目?

2
【本地 XML 数据库 - 维基百科】(http://en.wikipedia.org/wiki/XML_database#Native_XML_databases) - Gordon
作为一个完全与主题无关的评论,我将仔细研究http://persvr.org/,这是一个JSON(类似sqlite)数据库。 - Kamil Szot
5个回答

10

我们公司广泛使用 eXist 作为我们的DITA内容管理系统。

这个产品非常好。包括完整的XQuery支持、高效的XML索引以及一个良好的应用层,可用于构建各种功能。

至于之前的评论,认为本地XML数据库是一种时尚,不是市场的真实反映。事实上,在NoSQL产品方面,MarkLogic Server(一种本地XML数据库)在性能方面几乎比其他SQL数据库都要好,特别是与基于文档的搜索相关的方面。它被广泛用于一些最大公司的性能关键应用中。(它也非常昂贵!)

我不会在这里过多讨论XML vs JSON的问题,因为这没什么意义。然而,从存储的角度来看,XML与JSON并不是一个相关的争论点。所有数据库本质上都将信息规范化为非常有效的存储形式。但是,XML是一个非常稳健的标准,并支持许多强大的技术。

  • XPath (parent or ancestor selection anyone?)
  • XQuery
  • XSLT
  • XML Schema
  • XProc
  • XMLDB
  • Namespacing

如果您有特定需要的JSON,那么调查一下JSON数据库是个好主意。只需注意,XML真的不是一个时尚,而且在处理基于文档的数据时是一个非常稳健的框架。


4

我使用过eXist。我不会说这是最好和最流行的XML数据库,但对于我的目的来说还不错。它很容易安装和配置。它是开源的,支持XQuery、XPath,而且(对于我的项目真的很有用)它有漂亮简单的SOAP和REST API。我同意上面的评论,即XML数据库并不适合大型存储。


3

我推荐使用 BaseX

特别是如果你想与客户合作,有文档供许多语言使用,包括例如PHP的脚本编写。


2

如果你在使用Java,我建议使用BaseX而不是eXist。 它更易于使用,并且具有更好的查询速度。

否则,Berkeley DB XML也是一个不错的引擎,但是它是可嵌入/C++的,因此集成起来不太容易。


-1

我认为它们只是一时的潮流,现在没有真正受欢迎的。XML 用于数据交换很好,但不太适合大数据存储。


本来应该是一条评论,但实际上很可能是对此问题最好的回答。XML有很多缺点,难以处理、臃肿等等... JSON是一种更好的格式,如果你选择使用NoSQL,那么最好不要使用XML。我个人喜欢MongoDB。 - Earlz
我问这个问题是因为我主要处理树形数据,并且非常喜欢XPath,所以我希望在我的查询中拥有这样的功能。 - Kamil Szot
1
XML数据库绝对不是一时的潮流,如果说有什么变化的话,那就是在处理文档样式数据方面,它们比结构化数据库更受欢迎。就像网页、文档等一样。在这个领域,结构化数据库很难与本地XML数据库提供的效率相竞争。 - Casey Jordan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接