启动减少任务和次数之间的差异减少了所谓的功能?

时间:2014-09-26 17:14:31

标签: hadoop mapreduce reduce hadoop-partitioning

我刚刚开始学习hadoop,并且运行hadoop map-reduce程序,使用自定义分区器和比较器(首先在单节点环境中尝试它,稍后将在集群上部署),奇怪的行为(因为我不知道究竟是什么我正在观察的是,根据我的分区器和比较器,调用了五次reduce方法,因为我也从日志中检查它。但是在控制台上,启动减少任务的计数仍为“1”。我非常怀疑这五个函数调用是否并行运行?如果没有,那么我将如何为这些减少函数调用实现分布式计算的优势,因为这些reduce函数调用收集的数据将很大。 请澄清,我错过了什么概念?

1 个答案:

答案 0 :(得分:4)

reduce 函数是连接两个数据时调用的实际函数。 reduce 任务是在计算机上运行的程序,它连续多次执行reduce函数。

如果您希望实际并行处理数据,则必须(手动)启动多个reduce任务 - hadoop将在它们之间划分工作。