整套大数据学习资料(视频+笔记)百度网盘无门槛下载:http://www.edu360.cn/news/content?id=3377

5.3.2 关于Reducer

hadoop 小红牛 10℃ 0评论

reducer必须找出指定键的最大值。这是针对此特性的一个简单的测试,其中使用了一个ReduceDriver

 

@Test

public void returnsMaximumlntegerlnValues() throws IOException, InterruptedException {

new ReduceDriver<Text, IntWritable, Text^ IntWritable>()

.withReducer(new MaxTemperatureReducer())

• withInputKey(new Text("1950"))

.withInputValues(Arrays.asList(new IntWritable(10), new IntWritable(5))) .withOutput(new Text("1950M), new IntWritable(10))

.runTest();

}

我们对一些IntWritable值构建一个迭代器来验证MaxTemperatureReducer能找到最大值。范例5-7里的代码是一个通过测试的MaxTemperatureReducer的实现。

范例5-7.用来计算最高气温的reducer

public class MaxTemperatureReducer extends Reducer<Text, IntWritable, Text, IntWritable> {

^Override

public void reduce(Text key, Iterable<IntWritable> values,

Context context)

throws IOException, InterruptedException {

int maxValue = Integer .MIN__VALUE; for (IntWritable value : values) {

maxValue = Math.max(maxValue, value.get());

>

context.write(key, new IntWritable(maxValue));

转载请注明:全栈大数据 » 5.3.2 关于Reducer

喜欢 (1)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址