大数据全系列 教程
1869个小节阅读:467.9k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
xxxxxxxxxx
package com.itbaizhan;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Reducer;
import java.io.IOException;
/**输入的kv对的类型:KEYIN, VALUEIN, (分别和Mapper输出的kv对的类型保持一致)
* 输出的kv对的类型:KEYOUT, VALUEOUT
*/
public class WCReducer extends Reducer<Text, IntWritable,Text,IntWritable> {
private int sum;
private IntWritable valOut = new IntWritable();
//相同的key为一组,调用一次reduce方法
@Override
protected void reduce(Text key, Iterable<IntWritable> values, Reducer<Text, IntWritable, Text, IntWritable>.Context context) throws IOException, InterruptedException {
//hello 1
//hello 1
//hello 1
//key:hello values: 1,1,1
//首先将sum重置为0,避免上一组数据计算参数干扰
sum = 0;
//遍历values,累加求和
for(IntWritable value:values){
sum += value.get();
}
//将计算后的结果sum封装到valOut中
valOut.set(sum);
//输出
context.write(key,valOut);
}
}