与其他系统相比
MapReduce似乎采用的是一种蛮力方法。每个查询需要处理整个数据集——或至少数据集的很大一部分。反过来想,这也正是它的能力。MapReduce是一个批量查询处理器,并且它能够在合理的时间范围内处理针对整个数据集的即时(ad hoc)查询。它改变了我们对数据的传统看法,并且解放了以前存储在磁带和磁盘上的数据。它赋予我们对数据进行创新的机会。那些以前需要很长时间处理才能获得结果的问题现在已经迎刃而解,但也引发了新的问题和见解。
例如,Rackspace的邮件部门Mailtrust,使用Hadoop处理邮件日志。他们写的即席查询是找出用户的地理分布。他们是这么描述的:
“这些数据是非常有用的,我们每月运行一次MapReduce任务来帮助我们决定哪些Rackspace数据中心需要添加新的邮件服务器。”
通过整合数百GB的数据,并用MapReduce分析这些数据,Rackspace的工程师们从中了解到以前没有留意的数据,并且,他们可以运用这些信息改善现有的服务。第16章将详细介绍Rackspace公司是如何运用Hadoop的。