映射减少TB级数据的算法?

时间:2010-02-10 05:12:14

标签: analysis mapreduce

这个问题没有一个“正确”的答案。

我有兴趣在群集上运行Terabytes数据上的Map Reduce算法。

我想更多地了解所述算法的运行时间。

我应该阅读哪些书?

我对设置Map Reduce集群或运行标准算法不感兴趣。我需要严格的理论治疗或运行时间。

编辑:问题不在于地图减少了更改运行时间。问题是 - 大多数算法都不能很好地分配到map reduce框架。我对在map reduce framework上运行的算法感兴趣。

3 个答案:

答案 0 :(得分:4)

从技术上讲,与“标准”算法相比,MapReduce的运行时分析没有什么不同 - MapReduce仍然是一个算法,就像任何其他算法一样(或者特别是,一类算法在多个步骤中发生,具有一定的交互作用在这些步骤之间)。

当您考虑跨多台计算机的任务划分,然后找到每个步骤所需的最大单个机器时间时,MapReduce作业的运行时仍将扩展正常的算法分析预测的方式。

也就是说,如果你有一个需要M映射操作的任务,并且R减少操作,在N台机器上运行,并且你希望平均映射操作需要花费很多时间和平均减少操作时间,那么你'将有ceil(M/N)*m + ceil(R/N)*r时间的预期运行时间来完成所有相关任务。

预测M,R,m和r的值都可以通过对插入MapReduce的算法进行常规分析来实现。

答案 1 :(得分:1)

我所知道的只有两本书已经出版,但还有更多作品正在出版:

Pro hadoopHadoop: The Definitive Guide

其中,Pro Hadoop更像是一本初学者书,而The Definitive Guide适合那些知道Hadoop实际上是什么的人。

我拥有The Definitive Guide并认为它是一本优秀的书。它提供了有关HDFS如何工作的良好技术细节,并涵盖了一系列相关主题,如MapReduce,Pig,Hive,HBase等。还应该注意的是,这本书是由Tom White编写的,他参与了Hadoop的开发很长一段时间,现在可以在cloudera工作。

对于Hadoop上的算法分析,您可以查看TeraByte排序基准。雅虎已经完成了Hadoop如何针对这个特定基准测试的表现:TeraByte Sort on Apache Hadoop。本文写于2008年。

可以找到有关2009年结果的更多详细信息here

答案 2 :(得分:0)

有一本关于应用于MapReduce模型的数据挖掘算法的好书。

它是由两位斯坦福大学教授编写的,如果免费提供的话:

http://infolab.stanford.edu/~ullman/mmds.html