MapReduce是倒退:拿它与关系数据库比较公平吗?

文/Scott Delap  译/宋玮  出处/InfoQ

最近David J. DeWitt和Michael Stonebraker在the Database Column上写了一篇文章试图将日益流行的MapReduce编程范式与关系数据库进行比较。该文章说道:
……作为数据处理范式,MapReduce代表着一个巨大退步。数据库社区已经学到了如下三个经验,这些经验从40年前IBM第一次在1968年发布IMS时就已经揭示出来了……根据迄今为止的评估实验,我们严重怀疑MapReduce应用程序能有多大伸缩性。此外,MapReduce的实现者应该好好学习近25年来的并行DBMS研究文献。
文章接着给罗列了如下判据:
  • MapReduce是一个糟糕的实现(与B-trees相比)
  • MapReduce不是革新
  • MapReduce缺乏某些特性(如装载和索引)
  • MapReduce与DBMS工具不兼容
博客界很快就声称这一比较及其理由都是漏洞百出的。Greg Jorgensen进行了逐条反驳。在这些条目中,他指出MapReduce不是数据库,而是用于分布式处理的算法技术,不能这么比较。Jorgensen建议更好的比较对象应该是SimpleDB:
……作者真正想抱怨的是分布式“云”数据管理系统,如亚马逊的SimpleDB;实际上,如果你将“MapReduce”换为“SimpleDB”,原文差不多就有意义了……
Rich Skrenta从打破习惯的角度发表了评论:
……打破了你的习惯的东西总是有些地方看不顺眼的。功能不足,发展得也不成熟。但要是在价格上能赢10倍,不牢靠的廉价货最终也会胜出。想想Linux对阵AT&T的Unix,或mysql对阵Oracle……
关于这篇文章冗长的争论和评论还可以从redditycombinator上找到。

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [应用系统] 的这些文章也感兴趣:

Microsoft System Center Operations Manager (SCOM) 的部署
开源技术选型手册
“我能以后再调用你吗?”使用SCA开发异步服务
十大开源CRM
在这个Web框架满天飞的世界中,一些开发者还在构建其自己的框架
Google App Engine 数据实体关系建模
IT SOA vs 业务SOA?
开源CRM的选择
Windows Live ID 开发(1) 创建并配置管理域
ERP实施—给自己一片悬崖
拼吾爱变形金刚