一、什么是MapReduce
MapReduce 是一个分布式计算框架,它将大型数据操作作业分解为可以跨服务器集群并行,适用于大量数据的处理,每个job包含了 map 和 reduce 两部分。
工作原理:
(附一张图,这里说的会比较清楚)
附带词频统计的代码:
// 1、首先建一个 map 类用于文件的分割
//map 是通过 键和值 来进行分割操作
//LongWritable 键的输入类型 Text 值的输入类型 Text 键的输出类型 IntWritable 值的输出类型
public class WCMapper extends Mapper<LongWritable, Text,Text,IntWritable> {
//创建 K、V的输出对象
Text k = new Text();
IntWritable v = new IntWritable(1);
//(创建一个值 用于统计每个单词出现的个数 我这选取1 作为统计的标准)
//重写map 方法
@Override
protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
//将文本转化为string 类型并输出
String line = value.