现在开始学习mapreduce的内容。首先我们来装载mapreduce的程序。这里运行mapreduce程序的方法有两种,一种是在eclipse下运行,一种是在命令行下运行。先来介绍在eclipse下运行的方法。
一、File->New->others->Map/Reduce Project出现一下屏幕
project name填入项目名称,点击finish即可,然后在项目名称/src下添加包,并写入mapreduce的java源程序。这里为了方便,用的是源码当中提供的示例代码wordcount.java(路径为/${hadoop_home}/hadoop-exaples-1.2.1.jar//org/apache/hadoop/examples/WordCount.java),添加进来后就直接项目右键->run configuration->Java Application->WordCount->Arguments 输入输入文件和输出文件的路径名,输出文件一定不可以存在于HDFS上,否则会报错,而输入文件则一定要出现在HDFS上(所以你要将你的输入文件添加到HDFS上)。我这里的输入文件加为input,文件夹下有两个文件,file01,、file02,内容为了方便就各自写了几个单词。
然后点击run就可以运行了,不过由于是伪分布式,所以执行起来和普通的java程序在时间上没多大区别,然后从网页打开你的HDFS,就可以找到你的输出内容了
打开output01,再打开文件part-r-00000,内容如下:
每个单词的数量已经统计出来了。
下面介绍在命令行模式下运行(比较麻烦,不推荐):
二、主要步骤就三步,但要把所需的包一起打包,所以比较麻烦。
(1)编译
这一步之前要把所用的包复制到原java文件的目录下边,利用
javac -classpath /${hadoop_home}/hadoop-core-1.2.1.jar -d 存放的路径 源文件名
(2)