当我们执行一个普通的字数统计任务时,我们使用一个MapReduce程序来完成。它不是连续的。但是在像大型图的最短路径分析这样的程序中,我们必须设计一个“顺序”的MapReduce作业。这两种MapReduce编程方法的基本区别或相似之处是什么?
发布于 2014-04-10 17:49:09
正如您提到的wordcount作业不是连续的,我假设您使用的是示例wordcount作业,其中键(单词)在map阶段划分,处理(count)在reduce阶段。因此,任务可以在不同的节点中拆分并同时执行。
我建议您阅读本教程:https://developer.yahoo.com/hadoop/tutorial/module4.html,这样您将能够意识到,即使在映射阶段,任务也是分布式的,这取决于可用节点的数量!
关于你的“连续”MapReduce任务。我想你的意思是,没有办法划分处理过程来实现预期的结果。如果是这样的话,我怀疑你不会从Hadoop框架中获得最好的结果,因为你的MapReduce阶段必须发生在一个节点上。但是,如果您进行快速搜索,我相信您将能够找到用于图形处理的算法,例如为MapReduce设计的Dijkstra算法。
干杯,马可
https://stackoverflow.com/questions/22955199
复制相似问题