微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Hadoop入门学习 2 ——wordcount示例运行

1.wordcount示例的运行:

wordcount是一个入门级的程序,相当于hadoop界的helloworld,在hadoop的安装目录下,是自带wordcount示例程序的,我们只需要准备一个文本文件,然后执行它,学习它,就可以对Hadoop的数据处理有个大概的了解。

(1)准备一个文件

vim file

在vim中按 i 进入插入模式,在file中写入以下内容,或者其他任意内容,之后esc退出插入模式,键入:wq

hello world hello hadoop
abc hadoop aabb hello word
count test hdfs mapreduce

(2)使用hdfs的命令创建好输入文件的目录并将file放入输入目录

hadoop fs -mkdir /input/wordcount
hadoop fs -put file /input/wordcount 

完成之后可以检查一下file是否已经放入了目录下

hadoop fs -ls -R /

(3)执行示例:

进入目录:
/usr/local/Cellar/hadoop/3.2.1/libexec/share/hadoop/mapreduce
并查看:

cd /usr/local/Cellar/hadoop/3.2.1/libexec/share/hadoop/mapreduce

hadoop jar hadoop-mapreduce-examples-3.2.1.jar 

可以看到有如下的示例程序,wordcount包含在其中(倒数第三行)

在这里插入图片描述


执行这个示例,/input/wordcount和/output/wordcount一个文件的输入路径,第二个参数是文件输出路径,如果没有的话hadoop会自己创建

hadoop jar hadoop-mapreduce-examples-3.2.1.jar  wordcount /input/wordcount  /output/wordcount

执行完毕后查看输出目录:

hadoop fs -ls /output/wordcount

看到如下结果:

Found 2 items
-rw-r--r--   1 wangbo supergroup          0 2020-01-29 20:03 /output/wordcount/_SUCCESS
-rw-r--r--   1 wangbo supergroup         79 2020-01-29 20:03 /output/wordcount/part-r-00000

这个名为part-r-00000的文件就是执行的结果,查看这个文件

hadoop fs -cat /output/wordcount/part-r-00000

获得的结果是按照字典序排列好的键值对,key是字符串,value是出现的个数:

aabb	1
abc	1
count	1
hadoop	2
hdfs	1
hello	3
mapreduce	1
test	1
word	1
world	1

如下图:

在这里插入图片描述

2.MapReduce过程的分析

(1)什么是MapReduce?

MapReduce是一种可用于数据处理的编程模型
MapReduce程序本质上是并行运行的,因此可以将大规模的数据分析任务分发给任何一个拥有足够多机器的数据中心。MapReduce的优势在于处理大规模数据集。

(2)MapReduce具有什么功能

Hadoop将作业分成若干个任务(task)来执行,其中包括两类任务:map任务以及reduce任务。
Hadoop将MapReduce的输入数据划分成等长的小数据块,成为输入分片(input split),为每个分片构建一个map任务,由该任务来运行用户定义的map函数,从而处理分片中的每条记录。
需要注意的是,map任务将其输出写入本地磁盘,而不是hdfs,因为map的输出是中间结果,该中间结果经过reduce任务处理后才产生最终结果,因此,将map的输出写入hdfs并实现备份就显得小题大做。

具体的过程图示如下(来自慕课网的Hadoop基础课程):
课程链接

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

硬看黑学头秃秃 发布了12 篇原创文章 · 获赞 6 · 访问量 1725 私信 关注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐