2008-07-04
整理世界:谷歌发明处理数据新方法 - [【我的翻译】]
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://sylviajunior.blogbus.com/logs/24098316.html
源文档 <http://www.wired.com/science/discoveries/magazine/16-07/pb_sorting>
如果你想要从一大堆数据中取得有用的信息,按照常规做法,你需要做两件事:首先,小心翼翼地保存数据,对数据进行贴标签、整理、分类;其次,用巨型计算机通过逐一排查的方法筛选数据。
但当数据集达到PB级别的时候,老方法就不那么可行了。贴标签,整理,分类,复制,这些维持数据的方法会吞噬你所有的时间。一个电脑,不管有多大,都不能咀嚼这么多的数字。
对于巨型数据集,谷歌有个很棒的解决方法:MapReduce。 它去除了对于传统数据库的需要,并自动在数据中心内分配工作。对于这些在Googleplex不包含的东西,谷歌软件库里有它的开源版本,叫Hadoop。
谷歌如何碾碎数字?
MapReduce能够解决你“扔”给它的任何类型的信息,无论是图片还是电话号码。在下面的例子里,我们将清点一下在“谷歌图书”(Google Books)里专有名词的频率。
1.收集
MapReduce不需要传统结构的数据库,信息在收集的时候就已经分类了。我们只是把谷歌扫描过的所有数据的全文聚集在一起。
2.描绘
写个方程来描绘数据:“清点谷歌图书里每一个词的每一次使用”。这个任务于是在你的“电脑大军”中被分解,每一个电脑被指派处理一块数据。比如,A电脑处理《战争与和平》,它便知道在这本书里有些什么词,而不是《安娜卡列尼娜》里的。
3.保存
每一个负责描绘工作的PC都把结果放到它的本地硬盘中,减少数据传输时间。被分配到“还原”功能的电脑从负责描绘的电脑中获取清单。
4.还原
负责“还原“工作的电脑将清单上的词语进行关联。现在,你就知道了某特定词语在哪本书被用了多少次。
5.解决
结果是什么?是一个关于你的数据的数据集。在我们的例子里,最终的词汇清单被分散存储,所以它可以被快速的参阅并且提问:”托尔斯泰有多少次提到了莫斯科?多少次提到巴黎?“ 你再也不必从无关的数据中艰苦地得到答案了。
翻译:兮兮
随机文章:
收藏到:Del.icio.us








