首先呢,题目写得不是很清晰,因为是初学者,小白,所以见谅。
这里我主要是介绍一下我自己初学hadoop的一点经验。在看了不少资料将hadoop的伪分布模式配置好之后,简单的一些上传下载等操作浏览了一遍。
在学到通过eclipse来运行自己写的WordCount小程序的时候,出现了几个小问题。虽然说是小问题但是浪费了我好几个小时。
第一个问题:运行的时候报错如下:
ERROR security.UserGroupInformation: PriviledgedActionException as:Flyer cause:java.io.IOException: Failed to set permissions of path: \tmp\hadoop-Flyer\mapred\staging\Flyer-1062052248\.staging to 0700
Exception in thread "main" java.io.IOException: Failed to set permissions of path: \tmp\hadoop-Flyer\mapred\staging\Flyer-1062052248\.staging to 0700
at org.apache.hadoop.fs.FileUtil.checkReturnValue(FileUtil.java:689)
... ...
查了一下是因为权限的问题,在windows下才会出现的问题。所以呢,就按照网上的提示区修改。这个百度一下就有很多类似的解答。
第二个问题:参数不对
在run之前,一定不能忘记了配置参数,两个参数的路径一定要写全,我这里的参数是这样的:
hdfs://192.168.80.3:9000/user/root/input hdfs://192.168.80.3:9000/user/root/output
其中192.168.80.3是我虚拟机的ip,root是我的用户名,然后其它的就是input需要提前上传到对应的目录,output必须是不存在的,这些都是细节问题了。
感觉自己做得时候遇到问题觉得挺多的,但是经过一番查询调试之后,发现其实也就那么几个小问题,写下来的时候就更觉得好像没什么好写的,感觉都是理所当然的似的。学习学习呀,看来还是要自己慢慢搞懂呀。