NoSQL的未来走向何方?

日期: 2014-01-09 作者:ObjectRocket创始人Kenny Gorman翻译:OSChina 来源:TechTarget中国 英文

近期,MongoDB公司获得1.5亿美元资本投资的消息投射出开源数据已不再处于起步阶段。

事实上,从投资者名单来看——包括T. Rowe Price和Fidelity投资公司——这可以确定地说开源数据已经渡过了青春期。它还没有完全长大,但很快就会有自己的一席之地。华尔街确信有一天它投掷石块足以伤害像IBM及Oracle等巨头。

但NoSQL成年的旅程并非一帆风顺。

每个关注NoSQL的人都应该会了解,在2010年由于MongoDB扩展性和负载平衡问题,让Foursquare经历了长达11小时的漫长黑暗。

Foursquare的运营总监Nathan Folkman当时发表了一篇详细的技术解释, 博客就简单地用 “So, that was a bummer”作为标题。10gen(今年公司更名为MongoDB, Inc.)的CTO Eliot Horowitz组织进行了一次严格的纠错行动,同时也在各地Mongo开发者中展开了一场关于MongoDB必要修正的热烈讨论。

停运的准确原因非常复杂,但是Foursquare出现问题的最基本的原因是:难以跟上用户数据的增长。团队没能对增长做好充分的准备,而且MongoDB的实现也有潜在缺陷。

2010年8月的时候,FourSquare有着300多万用户,却只有32名员工,公司刚刚成立不到一年。欢迎来到陌生而狂野的21世纪编程世界!

在这个发行应用和实时数据的时代,可能短短一瞬就能获得100万用户。eBay和AOL用了许多年才达到100万用户,而如今Instagram只用了几个月。扩大软件规模和数据规模并不难,难的是在现在缩短的周期内做到这一点。

Foursquare成立三年来,MongoDB已经成为了NoSQL运动事实上的领袖。Cisco和Craigslist使用它,Shutterfly和McAfee也使用它。现在,MongoDB公司的市值已经超过了10亿美元——对于这场开源创新运动是个好的开端。

现在,MongoDB已经有了500万次下载,而这个数字正在以每月15万的速度持续增长。围绕在MongoDB身边,其他的非关系型数据库也在发展:Cassandra、HBase、CouchDB和Riak。从技术角度来看,这些NoSQL数据库有着一些共同的特点。

总的来说,他们都是非关系型的、开源的、易集群的、无模式的面向21世纪Web计算的数据库。他们都争着想在300亿数据产业中分得一杯羹。代码的免费提供并不意味着NoSQL是做慈善的,真正的价值并不在于代码,而在于如何使其大规模运行的技术。

公司和开发者们意识到运营数据密集型应用的关键在于性能。不仅仅是代码,架构和硬件也同样重要。

随着NoSQL生态系统的发展,一系列的优胜劣汰正在展开。一些NoSQL产品会失败而另一些则高歌猛进。各种企业和初创公司对NoSQL的需求日益增加,对有助于提高效率和无缝扩展的工具的需求也与日俱增。

MongoDB这样的平台呼声很高,因为他让开发者可以使用很多当今流行语言的原生数据结构。开发者将更加专注于代码的实现,而不是充当数据库管理员并为扩展性提心吊胆。MongoDB让数据的扩展和平衡与开发者所使用的平台自动对接了起来,这就是开发者喜欢他的原因。

但是所谓的全自动扩展并不是完全自动,仍然需要一些设计。这就是NoSQL下一步的发展方向,继续钻研技术,服务于应用底层。

MongoDB可以自动地进行横向扩展和切分。默认情况下,balancer会将数据在各个shard下均衡。Mongo不在乎每个shard到底是物理的、虚拟的还是基于云的,但是你的客户在乎。

很明显,NoSQL对资源的较大占用使得其公有云和虚拟主机性能不是很好。没有很好的切分数据的方法,你会发现当你的数据量在集群中增长的时候,你会被你的数据搞晕的。

那如何让一个应用有着云计算般的扩展性和单一主机一样的性能呢?这是数据和计算机科学的终极目标。好消息是,有一些提供商已经开始认真着手这方面的工作了。

当然,你依旧可以搭建一个私有云然后把你的全部数据放到防火墙后面,但这通常意味着建立大规模的数据中心,这一般不会得到投资人或CFO的批准。所以现在新一代的解决方案就是DaaS(数据即服务)供应商。他们会负责架构的每一层——从操作系统内核、硬盘驱动到文件系统,优化数据的性能。

对于MongoDB而言,他们正在开发工具来自动选择正确的shard key(划分数据负载的字段),然后他们会自动地在你的数据量增长时为你的集群增加分块。这个模型就好比把负载分成了集装箱单元一样。

与传统的云不同的是,NoSQL不会使用单一的单元大小。他使用高度定制的方法来部署可扩展的单元,而且还具有可以和最强大的物理主机相媲美的性能。这些新的提供商也明白,对于很多应用,关系型数据库与NoSQL同等重要,所以他们创建了在两者之间无缝同步的接口。他们最终认识到,事实上NoSQL和MySQL是开源战线上的战友,而非敌人。

总而言之,NoSQL未来可期。可扩展的高效大数据检索终将实现。基础设施和数据库技术之间的界限会变得越来越模糊。数据容器将会取代服务器,成为未来数据工程的单元。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐