Eclipse不能显示MapperReduce的日志

查看数: 9928 | 评论数: 3 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2014-8-22 09:49

正文摘要:

环境: window7  myeclipe9 hadoop2.2.0:虚拟机  3 * ubuntu12.4 每次用win7下myeclipse远程调用虚拟机运行MapperReduce程序,有结果产生。但是myeclipse控制台怎么没有显示MR的执行的日 ...

回复

sstutu 发表于 2014-8-22 10:38:32
你是想调试把,调试的方法有多种,这里说一种最简单、原始的一种。
记得Javascript刚开始之初是不能调试的,于是我们就采用alert的方法,看看结果是不是我们想要的,这里我们调试mapreduce采用的是类似的方法。我们通过Counter countPrint1 = context.getCounter("Map中循环strScore", “输出信息”);来输出调试信息,getCounter可以把程序里面的变量输出到Java控制台,这样就达到了调试效果。
详细参考:
Hadoop中调试(mapreduce)map与redcue信息的输出办法

当然还有其他调试方法,可以参考下面
Win7 Eclipse调试Centos Hadoop2.2-Mapreduce出现问题解决方案
调试Hadoop源代码:eclipse调试及日志打印
howtodown 发表于 2014-8-22 10:00:01
       // reduce类
        static class MyReduce extends
                        Reducer<Text, LongWritable, Text, LongWritable> {
                @Override
                protected void reduce(Text k2, java.lang.Iterable<LongWritable> v2s,
                                Context ctx) throws java.io.IOException, InterruptedException {
                        long times = 0L;
                        for (LongWritable count : v2s) {
                                times += count.get();
                        ctx.write(k2, new LongWritable(times));
                        }

                }

        }

在你的reduce函数中,根据自己的情况,加入ctx.write(),就能看到了

关闭

推荐上一条 /2 下一条