下面来讲一个hadoop的实例,统计文件words.txt中单词的个数。
一、环境需求:
1、虚拟机itcast01
2、在虚拟机itcast安装eclipse(注意是linux版本的,安装过程参考前面的博客)
二、过程
1、在itcast01虚拟机上创建文件words.txt文件,并写入一定数据,保存。
2、start-all.sh开启Hadoop服务,hadoop fs -put words.txt hdfs://itcast01:9000/把文件words.txt上传到hdfs服务器的更目录下。
3、打开eclipse,创建java工程。导入hadoop包和相关配置文件。
进入/hadoop安装目录下/share/hadoop/,(1)、把hdfs文件夹下的jar包和hdfs/bin目录下的jar包导入工程)。(2)、把mapreduce文件夹下的jar包和mapreduce/bin目录下的jar包导入工程。(3)、把yarn文件夹下的jar包和yarn/bin目录下的jar包导入工程。(4)、把common文件夹下的jar包和common/bin下的jar包导入工程。(5)、把hadoop安装目录下/etc/hadoop中core-site.xml和hdfs-site.xml文件配置到java工程的src目录下。
4、编写代码程序
建一个WcMapper类
package cn.itcast.hadoop.mr;
import java.io.IOException;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
public class WcMapper extends Mapper<LongWritable, Text, Text,LongWritable> {
//必须继承Mapper
@Override
protected void map