在命令行中运行Hadoop自带的WordCount程序

Hadoop集群搭建完之后,接下来就需要开始尝试去使用它啦。我们可以在这个集群上运行Hadoop的“Hello World程序”——WordCount单词计数。这个程序的代码在我们下载安装Hadoop的时候就已经打包下载好了,我们只需要直接去使用就可以了。

(一)、启动hdfs进程服务:

进入hadoop的目录中:cd Hadoop/hadoop-2.7.7

进入相应目录后启动HDFS的进程服务

在命令行中运行Hadoop自带的WordCount程序

启动后界面如下:

在命令行中运行Hadoop自带的WordCount程序

通过jps查看HDFS是否确实已经被启动(jps是一个java程序,它的作用是查看当前Java虚拟机运行着哪些程序)

在命令行中运行Hadoop自带的WordCount程序

在图中我们可以看到 DataNode、NameNode和SecondaryNameNode这三个组成HDFS系统的进程,说明HDFS系统已经成功启动。

(二)、使用HDFS服务运行WordCount程序

1.在云端创建一个/data/input的文件夹结构
bin/hdfs dfs -mkdir -p /data/input

在命令行中运行Hadoop自带的WordCount程序

2.在本地创建一个my_wordcount.txt 
touch my_wordcount.txt
3.编辑my_wordcount.txt文件,输入一些字符
nano my_wordcount.txt

在命令行中运行Hadoop自带的WordCount程序

在命令行中运行Hadoop自带的WordCount程序

4.把本地的my_wordcount.txt文件上传到云端,由主机进行文件的分布式存储。
bin/hdfs dfs -put my_wordcount.txt /data/input

(这个可以去localhost:9000的可视化界面中查看编辑。但是会特别卡,不建议去可视化界面看。)
5.查看云端的/data/input文件夹下面有哪些文件
bin/hdfs dfs -ls /data/input

在命令行中运行Hadoop自带的WordCount程序

我们会看到其中有个my_wordcount.txt文件。说明我们刚刚已经成功把my_wordcount.txt文件传输到云端了。

6.运行share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar这个java程序,调用wordcount方法。/data/input/my_wordcount.txt是输入参数,待处理的文件 /data/output/my_wordcount是输出参数,保存处理后的数据的文件夹名字
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount /data/input/my_wordcount.txt /data/out/my_wordcount

在命令行中运行Hadoop自带的WordCount程序

在命令行中运行Hadoop自带的WordCount程序
7.查看云端的/data/output/my_wordcount/part-r-00000文件。
bin/hdfs dfs -cat /data/out/my_wordcount/part-r-00000

在命令行中运行Hadoop自带的WordCount程序