Eclipse执行Hadoop WordCount

前期工作

我的Eclipse是安装在Windows下的,通过Eclipse执行程序连接Hadoop, 需要让虚拟机的访问地址和本机的访问地址保持在同一域内,虚拟机的地址更改前面的文章介绍过了,如果想改windows本机ip地址,打开“网络和共享中 心“,点击左侧菜单”更改适配器设置“,选择相应连接网络进行IpV4属性地址修改即可。我虚拟机地址为192.168.3.137

准备工作

地址配置好之后,在Eclipse上要安装Hadoop的插件(你可以参考源码自行修改)。

打开Eclipse安装路径---\eclipse\plugins,把hadoop-eclipse-plugin-1.1.2.jar放到这个目录下。

windows本机新建目录(本人在E:\hadoopMapReduceDir),从Linux的Hadoop安装包内复制所有jar放到这个目录下备用。

Ubuntu 13.04上搭建Hadoop环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu下Hadoop环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建Hadoop环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

搭建Hadoop环境(在Winodws环境下用虚拟机虚拟两个Ubuntu系统进行搭建) http://www.linuxidc.com/Linux/2011-12/48894.htm

配置工作

打开Eclipse,在菜单栏点击Window,showView选择Other打开选择显示的窗口,如下

在MapReduceTools 目录下找到这只大象,将它拖到Eclipse底部显示(和Console放一块)

打开新建配置窗口,设置连接信息,下图是本机的连接配置名称自己填写,两个端口和username 按图填写(Hadoop默认的端口)

点击Eclipse菜单栏Window ---》Preference,找到HadoopMap/Reduce,点击之后在右侧选择导入Hadoop jar的路径,这样以后新建Hadoop项目,jar包会自动从该路径加载,路径上面已设,添加进来如图

创建项目

  点击File---》other,打开新建对话框,创建Map/ReduceProject项目NewHadoopTest

创建完成后你会看到jar包自动加载到项目之中

拷贝Linux下Hadoop的src目录下的example java项目 到刚刚创建的工程下src下,

Linux下启动Hadoop(用JPS检查是否已启动),在Eclipse连接,连接成功后Hadoop目录就会显示如下

修改代码

  现在设置方面基本完成,接下来就是针对WordCount.java所做的修改和HDFS路径配置

打开WordCount.java(可能会报错),将main方法更改如下:

如果GenericOptionsParser报错,将Hadoop-core-1.1.2.jar加到项目中(或放到jar配置路径)。新建a.txt文件,输入下面内容,保存

在hadoopname下user—》hadoop目录创建input文件夹,将文件a.txt上传到HDFS input上,过程如下(不要创建output目录,不然执行会报错,),如果HDFS已有,可Linux使用命令hadoop fs -rmr /output删除)

在选择Wordcount.java,右击run as ---》run configurations,打开Arguments填写input out路径(注意:input和output路径中间是有空格的),这里我设置查询input下所有文件的单词出现次数。

右击WordCount.java,run as -àrun on hadoop 执行

执行结束后,刷新DFS Locations/ use/hadoop

自动生成output文件夹,点击可以看到执行结果。最终结果存放在part-r-00000中,双击查看即可

posted @ 2015-09-13 22:25  人生设计师  阅读(3343)  评论(0编辑  收藏  举报