运行Hadoop自带的MapReduce WordCount单词统计程序

使用的环境如下:

  • VMware虚拟机下CentOS7
  • hadoop-3.2.0
  • jdk1.8.0_221

完成hadoop的伪分布式搭建后,就可以执行hadoop自带的WordCount程序来入门了。

先启动hadoop,不然程序是不会成功运行的。

在这里插入图片描述

一、找到WordCount程序

在hadoop安装目录 /home/helloworld/software/hadoop-3.2.0/share/hadoop/mapreduce 下:
在这里插入图片描述
可以看到,就是 hadoop-mapreduce-examples-3.2.0.jar 这个压缩包。

二、创建HDFS数据目录
1、创建一个多级目录,保存MapReduce的输入文件
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop fs -mkdir -p /data/wordcount
2、创建一个目录,保存MapReduce的输出文件
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop fs -mkdir /output
3、查看刚才创建的文件
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop fs -ls /

在这里插入图片描述

三、创建一个单词文本,并上传到HDFS

可以用这个命令创建一个.txt文件,其他命令也可以:

[helloworld@localhost hadoop-3.2.0]$ vim myword.txt
上传这个文件到HDFS中:
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop fs -put myword.txt /data/wordcount
在HDFS中查看是否上传成功并列出文档内容
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop fs -ls /data/wordcount
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop fs -cat /data/wordcount/myword.txt

在这里插入图片描述

四、运行 WordCount 程序
运行下面的代码:
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop jar /home/helloworld/software/hadoop-3.2.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.0.jar wordcount /data/wordcount /output/wordcount

上面命令代码比较长,分六个部分:

  • hadoop 是$HADOOP_HOME/bin下的shell脚本名。
  • jar:hadoop脚本需要的command参数。
  • /home/helloworld/software/hadoop-3.2.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.0.jar :要执行的jar包在本地文件系统中的完整路径,参递给RunJar类。
  • wordcount :main方法所在的类,参递给RunJar类。
  • /data/wordcount:传递给WordCount类,作为DFS文件系统的路径,指示输入数据来源。
  • /output/wordcount:传递给WordCount类,作为DFS文件系统的路径,指示输出数据路径。

在这里插入图片描述
在这里插入图片描述

五、查看统计结果
先查看存放结果的 output 文件下有哪些文件:
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop fs -ls /output/wordcount/

在这里插入图片描述

接着打开这个 part-r-00000 的文件,它就是存放结果的文件。( 在第五步中解释命令时已经提到了结果存在的文件,也可以直接调用命令打开。)
[helloworld@localhost hadoop-3.2.0]$ ./bin/hadoop fs -cat /output/wordcount/part-r-00000

在这里插入图片描述
对比自己在txt文件里写的内容,发现结果正确

常用的HDFS命令可以参考:https://blog.csdn.net/weixin_43207025/article/details/100527501
运行中遇到“找不到或无法加载主类”,可以参考:https://blog.csdn.net/weixin_43207025/article/details/100527859

  • 11
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值