可以通过任何机会启动减速机级吗?在reducer日志中看不到Sytem.out.println语句

时间:2016-06-21 14:49:32

标签: hadoop mapreduce bigdata

我有一个驱动程序类,mapper类和reducer类。 mapreduce工作运行正常。但是期望的事情并没有到来。我已将System.out.println语句放在reducer中。我查看了mapper和reducer的日志。我在mapper中放入的System.out.println语句可以在日志中看到,但是在日志中看不到reducer中的println语句。减速机根本没有发动可能吗?

这是reducer的日志。

Reducer Log file

2 个答案:

答案 0 :(得分:0)

我认为此问题基于您之前问题中的代码:mapreduce composite Key sample - doesn't show the desired output

.ui file -> pyuic -> .py

由于public class CompositeKeyReducer extends Reducer<Country, IntWritable, Country, IntWritable> { public void reduce(Country key, Iterator<IntWritable> values, Context context) throws IOException, InterruptedException { } } 方法签名错误,因此未运行reduce。你有:

reduce

应该是:

public void reduce(Country key, Iterator<IntWritable> values, Context context)

为了确保不再发生这种情况,您应该将public void reduce(Country key, Iterable<IntWritable> values, Context context)注释添加到课程中。这将告诉您是否签名错误。

答案 1 :(得分:0)

代码没有变化。它现在有效。 我所做的只是重新启动了我的Hadoop Cloudera图像,它现在正常工作。我无法相信这一点。