运行wordcount程序

    xiaoxiao2023-11-01  147

    运行WordCount程序   单词计数是最简单也是最能体现MapReduce思想的程序之一,可以称为MapReduce版"Hello World",该程序的完整代码可以在Hadoop安装包的"src/examples"目录下找到。单词计数主要完成功能是:统计一系列文本文件中每个单词出现的次数,如下图所示。

    image

    2.1 准备工作

    现在以"hadoop"普通用户登录"Master.Hadoop"服务器。

    1)创建本地示例文件

    首先在"/home/hadoop"目录下创建文件夹"file"。

    image

    接着创建两个文本文件file1.txt和file2.txt,使file1.txt内容为"Hello World",而file2.txt的内容为"Hello Hadoop"。

    image

    2)在HDFS上创建输入文件夹

    image

    3)上传本地file中文件到集群的input目录下

    image

    g)

    2.2 运行例子

    1)在集群上运行WordCount程序

    备注:以input作为输入目录,output目录作为输出目录。

    已经编译好的WordCount的Jar在"/usr/hadoop"下面,就是"hadoop-examples-1.0.0.jar",所以在下面执行命令时记得把路径写全了,不然会提示找不到该Jar包。

    image

    2)MapReduce执行过程显示信息

    image

    Hadoop命令会启动一个JVM来运行这个MapReduce程序,并自动获得Hadoop的配置,同时把类的路径(及其依赖关系)加入到Hadoop的库中。以上就是Hadoop Job的运行记录,从这里可以看到,这个Job被赋予了一个ID号:job_201202292213_0002,而且得知输入文件有两个(Total input paths to process : 2),同时还可以了解map的输入输出记录(record数及字节数),以及reduce输入输出记录。比如说,在本例中,map的task数量是2个,reduce的task数量是一个。map的输入record数是2个,输出record数是4个等信息。

    2.3 查看结果

    1)查看HDFS上output目录内容

    image

    从上图中知道生成了三个文件,我们的结果在"part-r-00000"中。

    2)查看结果输出文件内容

    image

    最新回复(0)