【51CTO.com快译】随着NoSQL热潮的全面来袭,我们又发现了新一轮新、旧数据库技术的交融趋势。
多年以来,数据库市场一直分为泾渭分明的两派——传统关系型数据库与新型NoSQL数据库。不过根据Gartner公司的预测,这两个世界正在走向合并。
虽然这种“合并”趋势并不一定真会如Gartner公司的预测很快出现,但必须承认,NoSQL数据库正凭借着出色的灵活性、横向扩展以及高性能优势快速普及。事实上,最终数据库市场很可能会被NoSQL厂商所统治。
NoSQL:错误的名称,正确的思路
“NoSQL”其实有点名不符实。这主要是因为其一方面极力排斥SQL,但另一方面又在利用同一框架吸纳各类不同数据库。举例来说,Neo4j等图形数据库与Cassandra等列式数据库几乎毫无共同之处。
然而,这些不同的数据库亦在NoSQL的大旗下获得了三大创新重点。正如前MongoDB高管Kelly Stirman所言,“NoSQL包含着三项传统供应商难以实现的创新要点:1)灵活的数据模型,2)分布式架构(这一点对于云非常重要),3)灵活的一致性模型(对性能非常重要)。”
事实上,面对基于云的现代应用,传统RDBMS已经显得力不从心。大多数RDBMS虽然功能出色,但却缺乏灵活的数据模型。另外,其亦未能成功实现灵活的一致性模型。再有,RDBMS在拥抱分布式架构时也陷入困境。
即使如此,RDBMS作出的这些尝试还是使其更趋近于NoSQL。用DataStax公司***布道师Patrick McFadin撰文,这场“大融合”将最终带来“多模”数据库。更重要的是,McFadin认为同样的融合趋势亦会出现在NoSQL当中,其将引入更多RDBMS组件以真正冲击大规模主流应用场景。
不过,这样的融合也会带来新的问题。
融合的障碍
根据Esgyn公司CTO Rohi Jain所言:
我们很难利用单一查询引擎以支持单一操作、商务智能或者分析型工作负载(事实上,应有不同的专用平台支持各类负载)。要实现这样一套能够面对全部工作负载的查询引擎,意味着其必须支持更为广泛的实际要求。因此,我们正踏上一片新大陆,而这里显然充满障碍。
毫无疑问,SQL拥有着明确的竞争优势——相关人才更丰富,企业也掌握着更多相关经验。然而,真正让NoSQL给予SQL沉重一击的是其分布式架构。
VMware公司云原生应用***技术专家Jared Rosoff亦强调了这一点:“即使所有数据库皆进行融合并以SQL作为查询语言,NoSQL数据库仍能够凭借着分布式架构从根本上占据优势。”他同时补充称,“大家可以想象一下,MySQL或者Postgres或者Oracle或者SQL Server要用多长时间才能支持一套包含100个节点的分布式集群?”
虽然双方阵营间同时存在着对立与融合趋势,但“NoSQL数据库更易于转化为SQL形式,而SQL数据库很难转化为NoSQL形式”,而且“完全兼容SQL的数据库无法轻松实现规模扩展”,相比之下“完全分布式数据库则能够轻松支持部分SQL子集。”
简而言之,SQL非常出色但却可被替代。而在大数据时代之下,分布式计算则不存在任何替代性方案。
最终赢家
在这个融合新世界中,胜利的天秤似乎在朝NoSQL倾斜。然而,NoSQL厂商是否能够最终实现制霸?
尽管MongoDB与Cassandra都在一定程度上拥有王者气象,但是:
市场真正需要的是一套像MongoDB那样易于使用且灵活,但同时又像Cassandra那样具备出色扩展能力的开源数据库,而且不会影响现有安全性与工具储备。MongoDB在这方面拥有优势地位,但AWS则更可能在长期市场上取胜。
是的,就是很可能掌控整个Hadoop市场并拥有全球***企业级公有云基础设施的AWS。凭借着主导权、可观的企业客户吸引力以及大量分布式应用作为支持,各大数据库厂商最终很可能将彻底拜倒在Bezos膝下。
原文标题:Who took the 'no' out of NoSQL?,原文作者:Matt Asay
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】