
上QQ阅读APP看书,第一时间看更新
3.6 实训2 MapReduce应用
1.实训目的
编写一个MapReduce程序,实现简单的字符统计功能。
2.实训内容
1)MapReduce项目结构如图3-55所示。

图3-55 MapReduce项目结构
2)WordMapper类代码如下。


3)WordReducer类代码如下。

4)WordMain类代码如下。


5)file1.txt和file2.txt都是统计单词存放文件。
file1.txt中的内容如下。

file2.txt中的内容如下。

6)将wordcount打包。首先导入JAR文件,如图3-56所示。然后导入wordcount源文件,如图3-57所示。最后打包wordcount,如图3-58所示。

图3-56 导入JAR文件

图3-57 导入wordcount源文件

图3-58 打包wordcount
7)导入文件到虚拟机中。在Linux的opt目录下新建一个file文件夹,将文件file1.txt和file2.txt复制进去,同时将wordcount.jar文件也复制到opt目录中,如图3-59所示。

图3-59 导入文件到虚拟机中
8)运行程序。进入Hadoop的bin目录下,执行以下命令,如图3-60所示。

图3-60 执行MapReduce程序命令
9)显示wordcount程序运行结果。MapReduce图形化统计界面如图3-61所示。MapReduce统计界面如图3-62所示。

图3-61 MapReduce图形化统计界面

图3-62 MapReduce统计界面