说明:输入文件为北京市2010年1月份到5月份每天每间隔3小时的温度记录,数据格式为yyyyMMddHHmm temp,如下截图
(图中温度为华氏温度)
需求:求出每个月份温度最高的5天
解决思路:1、以月份+温度为key进行排序,月份升序,温度降序
2、每个月份单独生成一个文件,读取每个文件前5条记录,即为每个月份温度最高的5天
程序如下
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.hdfs.server.namenode.dfshealth_jsp;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.io.WritableComparable;
import or