2010-02-10 65 views
4

这个问题没有一个“正确的”答案。地图减少TB数据的算法?

我有兴趣在数据量为TB的数据集上运行Map Reduce算法。

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

我应该读什么书?

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

编辑:问题不是那个地图减少运行时间的变化。问题是 - 大多数算法不能很好地分配映射减少框架。我对在map reduce框架上运行的算法感兴趣。

回答

4

从技术上讲,与“标准”算法相比,MapReduce的运行时分析没有真正的不同 - MapReduce仍然是一个算法,就像任何其他算法一样(或者具体而言,是一个算法,它以多个步骤发生,这些步骤之间的交互)。

MapReduce作业的运行时间仍然会按照常规算法分析预测的方式进行扩展,这是因为您需要跨多台机器进行任务分工,然后查找每个步骤所需的最大单个机器时间。

也就是说,如果你有一个任务需要M个map操作,而R reduce操作在N台机器上运行,并且你期望平均map操作需要m个时间,平均缩减操作时间,那么你将有一个预期的运行时间来完成所有有关任务。

M,R,m和r值的预测值都可以通过正常分析插入MapReduce的任何算法来完成。

1

只有两本书,我知道的已公布,但更多的作品有:

Pro hadoopHadoop: The Definitive Guide

其中,临Hadoop是更多的是初学者的书,而权威指南适用于那些知道Hadoop究竟是什么的人。

我拥有权威指南并认为它是一本优秀的书。它提供了有关HDFS如何工作的良好技术细节,并涵盖了一系列相关主题,如MapReduce,Pig,Hive,HBase等。还应该注意的是,本书由Tom White编写,他曾参与过开发Hadoop很好,现在在cloudera工作。

就Hadoop算法的分析而言,您可以查看TeraByte排序基准。雅虎已经完成了Hadoop在这个特定基准测试中的表现:TeraByte Sort on Apache Hadoop。这篇论文写于2008年。

有关2009年结果的更多细节可以在here找到。