NoSQL的崛起吸引了全世界的眼球,其声势之浩大,恐怕除了与世隔绝的人,都应该有所耳闻了吧。
NoSQL的应用正在迅速膨胀,而且不仅限于初创公司。甚至像Apple和Comcast之类的大公司也已经染指其中,大型NoSQL的部署,很可能会让你公司中的其他相关设备相形见绌。
MongoDB是应用最为广泛的NoSQL数据库,其最新的估值在12亿美元的基础上上升了1.5亿美元。
没错,这是由一个“无聊”的数据库公司创造的纯开源软件,而它的价值超过了10亿美元。
不过,你很可能没有听过的是NoSQL前所未有的增长与“大数据”和“SQL”其实没有关系!
当然,很多NoSQL系统是“大数据”系统,但是绝大多数的实际部署都是“小数据”。实际上,近来很多SQL数据库也能承担大数据任务了。
而且很多NoSQL系统并不使用SQL作为其主要接口。毕竟,这是NoSQL这个词最初的含义(即“Not Only SQL”,意味着不仅仅是SQL)。然而有些NoSQL数据库却把SQL作为主要的查询接口,有趣的是,并不是所有的关系型数据工具都把SQL作为它们的主要接口(比如Excel的#1 BI工具)。
要真正了解NoSQL流行的原因,还需要进一步的探究,而不是仅限于大数据和非SQL。
解读“NoSQL热”
众所周知,开发一个新应用程序所需要的时间一直在稳步下降。这都要归功于新技术,云以及开源的发展。
现在优秀的开发人员可以只用一个周末的时间在车库中攒出一个功能齐全的应用程序——此应用程序在过去会耗费整个工程师团队数月的时间。想到这里就会让人无比震惊。
NoSQL数据库进一步加速了这一趋势。有了NoSQL:
- 开发人员可以将任何类型的数据塞进数据库,不仅限于结构化,统一,列表化的数据。当在创建应用程序时,大多数开发人员实际上会使用对象,其可以嵌套并运行非统一结构,并且还可以存储在本地的NoSQL数据库中。NoSQL数据适用于开发人员已经用来创建应用程序的数据模型。
- 开发人员并不需要花费数月的时间来创建一个严苛的数据模型,这样的模型都需要仔细斟酌,以巨大成本进行修订,并且还要由一个独立的数据库团队进行部署和维护。
NoSQL让开发人员迅速地创建新应用程序或是改变已有应用程序已成为一个普遍的现象——此数量级的速度是他们利用遗留技术所不能达到的。
事实上,我认为当今许多流行语(云,API,devops,PaaS等等)得益于开发人员的推动(也就是“制造者的崛起”)。
谷歌的Google Trends表明(虽然是非科学的),越来越多的开发人员正在转向NoSQL数据库以创建新的应用程序。仅MongoDB的下载量就已经超过了7百万次(其中的2百万次下载发生在最近6个月)!
大型数据库厂商要么还没有染指NoSQL,要么还没有看到对类似MongoDB的应用。
没错,有的厂商正在试图创新。而有的依然忙于售卖基于40年前古老遗留技术的许可证,产品以及解决方案。而RDBMS数据库的最大破坏者正在他们眼皮底下发生!
NoSQL的阿喀琉斯之踵
虽然对NoSQL的应用十分惊人,但是NoSQL也并非是一切都很完美。NoSQL数据库有一个致命的弱点,它会最终会抑制甚至是扭转其爆炸式的增长。
这很简单:现在几乎是没有什么NoSQL数据库的分析工具。应用程序塞了一堆数据到数据库中,但是以前的分析工具是基于关系型技术的,它们在这里没有任何意义(因为它们不是统一的,表格化的数据)。
所以通常情况下企业会把他们的NoSQL数据提取,转化,正常化以及结构化,然后放入RDBMS,这样他们就可以处理数据并创建报告了。
这一过程所付出的成本和代价,加上NoSQL数据并非完全独立(使用NoSQL的同时还需要SQL的帮助)的事实是阻碍NoSQL数据库独霸江湖的最大威胁。
如果RDBMS厂商一起行动并向NoSQL数据库靠拢,同时仍然保持对遗留分析工具链的兼容性,那么他们就可能会减缓甚至是扭转NoSQL迅猛发展的局面。
PostgreSQL开创了先河,即便它还有很长的路要走。这是一个为开发人员开发的开源RDBMS,最近的补充让PostgreSQL表现的更像是NoSQL数据库而非传统RDBMS技术(这是以打破和现有分析工具链兼容性为代价的,这多少会拉平竞争)。
NoSQL真的会昙花一现吗?
当前NoSQL的应用催生了十亿美元级的数据库公司,这是数十年来都未曾见过的景象。流入这一领域的资金会产生出其他价值数十亿美元的NoSQL行业,很大程度上与RDBMS催生BI,ETL,数据仓库以及其他很多行业有着相似的轨迹。
如今这是一个巨大的市场,因为每家NoSQL厂商都试图开拓出其技术所能处理的最大用例集合。
在未来几年,预计主要的数据库厂商会抢购那些已经看到巨大吸引力但是还不足以做大到上市(或许在某些情况下,有些甚至可以做到上市)的玩家。
今年早些时候,IBM斥巨资收购了Cloudant。这不会是最后一次,但绝对是业界的第一次。
缺乏可以本地支持NoSQL数据库的分析工具对于其可持续的应用是一个严重的问题。要么这将会为新的分析企业催生出市场(和在最初RDBMS解决方案脆弱情况下诞生了主要的BI和分析数据库厂商是非常类似的),要么它将会抑制NoSQL的应用并迫使RDBMS变得更像NoSQL。
在这两种情况下,数据库世界都会发生巨大的变化。
让自己扬帆起航准备迎接这一变化吧。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
翻译
相关推荐
-
OpenWorld18大会:Ellison宣布数据库的搜寻和破坏任务
在旧金山举行的甲骨文OpenWorld 2018大会中,甲骨文首席技术官(CTO)兼创始人Larry Elli […]
-
ObjectRocket着力发展Azure MongoDB服务
MongoDB吸引了微软公司的注意力,微软公司计划针对运行于该公司2017年发布的Azure Cosmos D […]
-
Azure数据湖分析从U-SQL中获得提升
大数据的发展已经让许多精通SQL的数据专业人员不知所措。微软的U-SQL编程语言试图让这些人回归数据查询游戏。
-
创建NoSQL数据建模符号 企业架构师亲自上阵
新兴的NoSQL数据风格促使创新的应用程序快速发展,但NoSQL同时也带来了挑战。NoSQL系统能够快速投入生产,有时甚至根本不用创建任何的前期模式。