在windows7下Eclipse中运行Hadoop的WordCount程序

运行环境:

Windows 7

JDK1.7

Hadoop2.5.2

一些准备:

hadoop-eclipse插件,用于在eclipse上访问Hadoop集群文件的插件

hadoop.dllwinutils.exe文件,在windows下运行Hadoop需要这两个文件

 

1. 首先,安装hadoop-eclipse插件,在网上下载与hadoop版本相对应的插件,然后将其放入eclipse中,可以将下载的jar包直接放入到eclipseplugins文件夹中或者自己新建文件夹通过创建xxx.link的文件来保存路径的方式。配置完插件之后重启eclipse软件会show View中看到MapReduce Tools表明安装插件成功。

在windows7下Eclipse中运行Hadoop的WordCount程序_第1张图片

2.双击打开MapReduce Tools,然后通过New Hadoop Location来创建连接Hadoop集群的信息。

在windows7下Eclipse中运行Hadoop的WordCount程序_第2张图片

3.上图的这两个端口并不是固定,而是根据自己的集群配置的,9000端口是配置的fs.defaultFS端口,9001是配置的mapreduce.jobtracker.address端口。如果能看到类似下图所示,列出了hdfs上的文件表明已经连接成功了。


在windows7下Eclipse中运行Hadoop的WordCount程序_第3张图片

4.在PreferencesHadoop Map/Reduce中配置下载后的Hadoop文件解压后的路径。

5.通过EclipseFile-->New打开新建窗口来新建一个Map/Reduce Project,如下图:

在windows7下Eclipse中运行Hadoop的WordCount程序_第4张图片

这样可以自动加载所需要的jar包,不需要再在项目中创建lib然后做Build Path的操作了。

6.将xx\hadoop2.5.2\hadoop-2.5.2\share\hadoop\mapreduce\sources路径下的hadoop-mapreduce-examples-2.5.2-sources.jar解压,可以找到WordCount文件,放入到刚才新建的MapReduce程序。

在windows7下Eclipse中运行Hadoop的WordCount程序_第5张图片

7.新建一个log4j.properties文件,里面需要进行配置,这是为了进行在控制台的输出,需要输出什么样的内容,可以根据自己的情况配置,注意这个新建文件并不是没有内容的。

8.将上述所说的hadoop.dllwinutils.exe文件放入到xx\hadoop2.5.2\hadoop-2.5.2\bin路径下,并且要将hadoop.dll文件放入到C:\Windows\System32路径下。不使用这两个文件是不能在windows下做本地运行wordcount程序的。

9.在刚才已经新建MapReduce项目中的WordCount程序的main函数中添加如下图所示的内容:

在windows7下Eclipse中运行Hadoop的WordCount程序_第6张图片

System.setProperty("hadoop.home.dir", "D:\\aaSoftware\\hadoop-2.5.2");其中:hadoop.home.dir是固定写法,因为程序中需要获取这个参数对应的值,也就是后面的hadop文件的路径。仅仅在程序中添加了这么一句代码,其他的都是hadoop源文件中自己的代码。

10.在WordCount程序中右键单击出现Run As-->Run Configuration

在windows7下Eclipse中运行Hadoop的WordCount程序_第7张图片

Arguments中配置输入输出的路径,中间用空格隔开,由于是在本地运行,其实这个路径无论输入输出路径写的是本地路径还是远程的集群路径都可以,其中的master指的是集群的主节点,它代替的是ip地址,由于本人在windowshosts文件中进行了配置,所以可以这么简写。

11.运行程序就会在控制台看到一些列的输出,并且能通过hadoo-eclipse插件看到运行的结果。否则,可能会由于某些地方配置不正确。


你可能感兴趣的:(hadoop)