大数据技术 - 通俗理解MapReduce之WordCount(二)

上一章我们搭建了分布式的 Hadoop 集群。本章我们介绍 Hadoop 框架中的一个核心模块 - MapReduce。MapReduce 是并行计算模块,顾名思义,它包含两个主要的阶段,map 阶段和 reduce 阶段。每个阶段输入和输出都是键值对。map 阶段主要是对输入的原始数据做处理,按照 key-value 形式输出数据,输出的数据按照key是有序的。reduce 阶段的输入是 map 任务的输出,会对输入的数据会按照 key 做归并排序,使得输入 reduce 任务输入的 key 也是有序的,reduce 阶段进行完业务处理之后将把数据输出到HDFS中。下面以具体的例子说明 MapReduce 的机制。

本章以 WordCount 为例子讲解 MapReduce 机制,这个例子相当于学习编程语言的 "Hello, World"。假设我们在 HDFS 上有一个 10T 的文件,文件每一行有多个单词,单词之间空格分割,现在我们想统计一下这个文件中每个单词出现的次数,这就是 word count。我们的例子将在上一章搭建的 Hadoop 集群上进行。首先准备数据源,我们实际的例子中的数据量比较少,本地(hadoop0 机器)文件如下:

word1文件: hello world hadoop hadoop spark word2文件: hadoop hbase mapreduce hdfs

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgdgfd.html