分别统计年、月、日最高气温(实现排序) package mr.temp; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.DoubleWritable; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.Mapper; import org.apache.hadoop.mapreduce.Reducer; import org.apache.hadoop.mapreduce.lib.input.FileInputFormat; import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; import org.apache.hadoop.util.GenericOptionsParser; import java.io.IOException; public class TopTemp { static class MyMapper extends Mapper<LongWritable, Text, Text, DoubleWritable> { Text outKey = new Text(); DoubleWritable outValue = new DoubleWritable(); @Override protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException { try { String[] datas = value.toString().split("\t"); outValue.set(Double.valueOf(datas[1])); outKey.set(datas[0].substring(0, 10));//按照天进行统计最高气温 context.write(outKey, outValue); outKey.set(datas[0].substring(0, 7));//按照月进行统计最高气温