MapReduce求年度最高气温值以及combiner的一点认识

本文是作者学习MapReduce的初步尝试,通过气象数据集示例介绍如何使用MapReduce求取年份气温最高值。文章重点讨论了combiner的作用和使用场景,解释了combiner如何通过局部处理优化MapReduce性能,同时通过最大值和平均值的例子说明了哪些操作适合使用combiner。
摘要由CSDN通过智能技术生成

        MapReduce编程我是初学,下面这个例子是参考《Hadoop权威指南》第二章中的气象数据集中求取年份气温最高值的一个示例入门程序,so,如果您是老道级的高手就不用往下看了。其实这个例子的原理和统计词频是一样的,这里重点想说的还是关于combiner的一点认识,不过索性就将代码的实现写了吧。

        MapReduce应用程序处理的数据是存放在HDFS(Hadoop distributed file system 即Hadoop分布式文件系统)中的,在将数据导入HDFS之前一般情况下我们都会对原始的数据进行预处理,主要是处于两方面的考虑:1> MapReduce程序对处理数量少的大型文件更容易更加高效,当在实际应用中如果你的输入集是由大量的小文件组成的,建议先对数据集合进行预处理,将其归并为数量相对较少的打文件,这样执行效率会更高。2> 原始数据集往往存在一些坏数据,这些数据不但对我们没有任何利用价值,而且有时还会影响程序的运行结果。基于此,由于气象数据集合就是由很多的小文件组成的,因此运行之前先将其进行预处理,一般采用各种脚本均可以实现,这里就不累赘了,只是说明预处理的必要性。

        气象数据记录是由一串的数字组成,不同的位代表不通的含义,其中年份和温度在一条记录中均有体现,气象数据可以在专门的网站上下载示例数据,这里图方便我自己造了几条数据,并保存在sample.txt文件夹中,它的基本形式如下:        

                                                     0067011990999991950051

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值