欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Marklogic学习由浅入深(D)——Marklogicvs.Oracle

程序员文章站 2022-04-12 20:39:01
Marklogic学习由浅入深(D)——Marklogicvs.Oracle。 Oracle在发展自己的NoSQL数据库的时候,曾写过一篇文章质疑Markl...

Marklogic学习由浅入深(D)——Marklogicvs.Oracle。 Oracle在发展自己的NoSQL数据库的时候,曾写过一篇文章质疑Marklogic,于是MarkLogic用下文怼了回去。

MarkLogic Server 是下一代基于XML的企业级DBMS,集数据库、搜索、应用服务器于一体。在各方都认可Marklogic的情况下,Oracle发文攻击,MarkLogic不能坐视不管,针对性的给予回复。

越来越多的企业选择在其关键应用中使用MarkLogic。由于是数据规模大并且业务复杂,选择类似Oracel这样的产品已经无法实现需求。很多公司与*部门采用Marklogic,使得Marklogic的增长迅速,这恰巧给对手Oracle造成了损失。这里总结几点Marklogic相对于Oracel的优势:

扩展性好,降低了软硬件的消耗 快速开发,降低实现成本 容易维护,拥有成本比较低 灵活的数据类型,支持多种数据结构 严格遵循标准(W3C XQuery 1.0) 成熟的案例可以效仿 前景好,不断增长的用户和持续的版本改进

Introduction

Oracle 发现MarkLogic 是其强有力的对手,越来越多的企业选择Marklogic即使Oracle推出免费服务。因为Marklogic拥有超过Oracle XML DB 10倍甚至100倍的性能,Marklogic更加的灵活,可扩展,易用。
Oracle的说法错误百出,企图用一些华丽的辞藻编造不实的言论。本文将以事实为依据,一一揭穿Oracle的谎言。

MarkLogic delivers 10 to 100 times the performance over Oracle XML DB

XQuery 1.0

Oracle 首先把矛头指向了MarkLogic对XQuery的支持能力。Marklogic是最先支持XQuery并引领整个行业重视XQuery。Marklogic还为用户编写了XQuery 1.1 的说明书。Oracle狭隘的认为XQuery只是一种查询语言,且必须以W3C推荐的标准添加新功能。事实上,这样的思维模式使得Oracle的用户在使用XQuery上限制颇多。

Oracle言论: Marklogic Server脱离了W3C标准,使用了令人困惑的’dialects’形式。Marklogic使用者容易被这些私有的非标准实现的扩展所迷惑。

Marklogic回应: Marklogic Server对W3C的XQuery支持率超过99%,Marklogic遵循一般的行业准则,加入的扩展功能也符合规范,相比之下,Oracle在其产品中加入SQL功能。Marklogic在对XQuery的扩展中加入写的能力,而这在XQuery 1.1 Working Draft中已经包含了,这表明Marklogic发展眼光独特。
Marklogic在2001年决定选择XML作为原生数据类型,比XQuery 1.0作为W3C推荐标准早了6年。Marklogic做了XQuery推荐标准的早期实现,并在此基础上添加新的功能。Oracle先说Marklogic基于该推荐标准,之后又说Marklogic服从XQuery 1.0
MarkLogic 一半的构想都是在使用户使用XQuery 1.0标准简单快捷的构建应用。使用Marklogic的扩展加上一些特性(如modules),XQuery就能支持更多的编程语言(如Java)而不仅仅是查询语言(如SQL). Oracle批评这些扩展而不管以前他们曾加入这种功能到SQL。并且,Oracle说的这种非标准的实现,引用的是不愿透露姓名的第三方机构数据也没有指出到底是哪些扩展不符合标准。

Support for XML Applications

MarkLogic一致关注于如何让开发者快速构建功能强大的应用。比如一些XQuery的扩展如try-catch 和 modules。Oracle不支持这些功能就意味着用户无法只运用XQuery编写程序,有时候需要结合XQuery,SQL,甚至PL/SQL。其他的创新,比如Marklogic在2009年推出的Application Servieces,显著提升了编程效率。

Oracle言论: Marklogic对XML应用的开发、部署、集成与管理功能不完善。

Marklogic回应: Marklogic开发者可以选择不同的开大环境,如oXygen 或者Eclipse,他们都有专门针对Marklogic的插件。Marklogic也有一个浏览器版的代码生成系统叫Appication Builder,你可以不用一行代码就生成一个应用。
Marklogic的管理员可以选择浏览器版的管理工具或者是通过XQuery API。Marklogic的应用构建容易,部署方便,也易于管理,这依赖于Marklogic强大,统一,单层次的结构,不需要切换数据库,搜索引擎和应用服务器。

Usage Scenarios

MarkLogic Server被广泛应用各种情景,客户在积极地谋求新的创收机会,依照联邦法规货币化内容,帮助诊断疾病,帮助传播知识,管理金融交易等等。一些公开的例子可以在Marklogic官网 www.marklogic.com 找到。

Oracle言论: MarkLogic只支持少量使用场景,并且会为了搜索重新利用文本而不是直接存贮XML(这里提到的应该是Marklogic的索引,Marklogic的索引占据了Marklogic很大的空间,而这只是为了加快Marklogic的检索效率)

Marklogic回应: Marklogic Server是一个基于XML的数据库,搜索引擎,应用服务器。因此它被广泛应用于信息产业,Marklogic的客户涵盖了出版,媒体,*,金融,航空等领域。

Total Cost of Ownership

用户都知道Marklogic集数据库,搜索,服务器与一身,要比传统的关系型数据库(如Oracle)要花费更少。统一架构使得开发成本降低,因为应用程序之间整合这些事情就被消除了。而Oracle需要编写代码整合应用,程序的健壮性差,不够高效,还要花费很多精力维护与更新。

Long-Term Viability

MarkLogic 最大的优势在于它只是想把客户的非结构化数据或半结构化数据处理得当。很多发现他们希望能利用好日益增长的大量数据信息,于是选择了Marklogic来解决这样的问题而不是Oracle。

Oracle’s XML DB Pitch

Oracle宣称他们能将XML整个到其RDBMS中。讽刺地说,这种RDBMS架构会严重影响XML DB的性能。RDBMS不适合处理这种太过灵活的XML的数据,因此,这个XML DB 也就不足以应对特殊的XML架构。