Hadoop运行WordCount示例出现的一些问题及解决办法

博客标题起的真别扭。。
先说两点:
1.用cygwin伪分布式环境运行的。
2.hadoop开发者第一期里有个DFSOperator的示例,那个更简单,怎么打jar包,怎么运行之类的问题可以先参见一个那篇文章。

运行WordCount示例遇到了两个问题:
a. ***/work/tmp does not exist的问题
解决办法:配置conf/mapred-site.xml文件中mapred.child.tmp属性的值,如下: 
   <property>   
      <name>mapred.child.tmp</name>     
      <value>/hadoop/childtmp</value>  
   </property> 
原因貌似是运行hadoop需要临时目录存储中间数据。
b. map100%,reduce0%的问题
解决办法:在/etc/hosts下加上本机器的名字和ip即可。

下边说一下运行过程:
1.准备一些测试数据,例如input1.txt和input2.txt



2.新建输入目录,将测试数据put进去。



3.运行./hadoop jar wordcount.jar WordCount input output,这里会自动新建output目录,如果之前已存在,会报FileAlreadyExistsException,这时需要./hadoop fs -rmr output删掉它(觉得这里有点奇怪,求解答)。



4.查看运行结果。



下一篇开始转战ubuntu,不在纠结windows了。  

猜你喜欢

转载自aaron-han.iteye.com/blog/1470922
今日推荐