分享

MapReduce初级案例(3):使用MapReduce实现平均成绩

hyj 发表于 2014-3-3 22:25:51 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 31 108002
quenlang 发表于 2014-9-30 17:19:17
测试成功,唯一遗憾的是只能打成jar包放到hadoop集群上区运行,在eclipse中运行虽然没有错误报出,但是控制台没有信息输出,而且也不会在hdfs上创建输出目录,我的hadoop集群不是建在本地的,eclipse中配置了远程hdfs;操作系统为rhel6.2,eclipse使用的是rhel自带的eclipse,hadoop搭在kvm上  
回复

使用道具 举报

glacieren 发表于 2014-10-30 15:34:12
  job.setCombinerClass(Reduce.class);
我把这句话注释掉,仍然能得到正确的结果

点评

这个是提高效率的,可以注释掉  发表于 2014-11-13 17:38
回复

使用道具 举报

glacieren 发表于 2014-10-30 15:51:08
也就是说map和combiner的结果在本例中是一样的,楼主能不能解释一下,谢谢啦~
回复

使用道具 举报

梦回三国 发表于 2014-11-13 17:16:09
真不错,不知道有没有中级高级的例子讲解
回复

使用道具 举报

tang 发表于 2015-4-4 15:06:58
回复

使用道具 举报

大葱来了 发表于 2015-5-31 23:57:12
求平均值不是说不能用combiner吗,这样出来的结果会不会有问题?
回复

使用道具 举报

晴天 发表于 2015-7-1 18:46:12
想请问下,这里为什么一直连接的本地呢?我的hadoop是2.5.2版本,查了好长时间没有解决,说是版本1x的是因为hadoop-core这个jar包,可是2.5版里没有这个包,是什么原因呢。如果使用默认的input目录,确是可以运行的
DFS Location 里也已经创建了score_in目录,上传了对应的文件。
run configurations里也已经设置了远程目录,
hdfs://master:9000/user/hadoop/score_in hdfs://master:9000/user/hadoop/score_out

log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Exception in thread "main" org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: file:/D:/eclipse/workspace-hadoop/score/score_in
        at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.singleThreadedListStatus(FileInputFormat.java:321)
        at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(FileInputFormat.java:264)
        at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.getSplits(FileInputFormat.java:385)
        at org.apache.hadoop.mapreduce.JobSubmitter.writeNewSplits(JobSubmitter.java:493)
        at org.apache.hadoop.mapreduce.JobSubmitter.writeSplits(JobSubmitter.java:510)
        at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:394)
        at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1285)
        at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1282)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:415)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614)
        at org.apache.hadoop.mapreduce.Job.submit(Job.java:1282)
        at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1303)
        at org.apache.hadoop.examples.Score.main(Score.java:160)

回复

使用道具 举报

jixianqiuxue 发表于 2015-7-1 22:26:54
晴天 发表于 2015-7-1 18:46
想请问下,这里为什么一直连接的本地呢?我的hadoop是2.5.2版本,查了好长时间没有解决,说是版本1x的是因 ...

InvalidInputException,输入路径异常
inputpath换成hdfs路径,你的是本地路径
回复

使用道具 举报

晴天 发表于 2015-7-2 08:34:19
jixianqiuxue 发表于 2015-7-1 22:26
InvalidInputException,输入路径异常
inputpath换成hdfs路径,你的是本地路径

inputpath换成hdfs路径,请问下,这里你指的是run configurations里设置吗?这里我设置的是远程的路径,如果 使用默认的input文件确是可以运行的,只是汉字有乱码。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条