1

我真的被卡住了。为什么我的 Map/Reducer 类不能显示任何东西?我将以下代码放在我的 Reducer 类中:

@Override
public void reduce(Text key, Iterable<LongWritable> values, Context context)
{
    // Standard algorithm for finding the max value
    long sum = 0;
    for (LongWritable value : values) {
        sum++; 
    }

    try
    {
        context.write(key, new LongWritable(sum));
        System.out.println("Reducer exits...");
    }
    catch (Exception e)
    {
        System.out.println(e);
    }
}

为什么行 "System.out.println("reducer exits...");" 运行 Hadoop 程序时无法在控制台中显示:hadoop jar xxx.jar 输入输出

4

1 回答 1

0

Hadoop 将 Map/Reduce 类 System.out 输出重定向到日志文件。如果您查看日志,您会发现正在打印的行。

日志将在以下位置找到:

http://<jobtracker_address>.50030/jobtracker.jsp -> select your completed job -. select the reduce task -> tasknumber -> task logs -> stdout logs

或者导航到您的日志目录路径并转到适合您工作的目录并查看那里的标准输出日志。

于 2013-07-16T22:38:47.377 回答