作者: ChaiJi

已知 MapReduce 程序代码块为: static class WordOperMap extends Mapper<LongWritable, Text, NullWritable, IntWritable> {     public void map(LongWritable offset, Text message, Context context) throws IOException, InterruptedException {         int val = Integer.parseUnsignedInt(message.toString().trim());         context.write(NullWritable.get(), new IntWritable(val));     } } static class WordOperReduce extends Reducer<NullWritable, IntWritable, IntWritable, IntWritable> {     List<Integer> list = new LinkedList<Integer>();     public void reduce(IntWritable key, Iterable<IntWritable> values, Context context) throws IOException, InterruptedException {         Iterator<IntWritable> iterator = values.iterator();         while (iterator.hasNext()) {             list.add(iterator.next().get());         }         Collections.sort(list, new Comparator<Integer>() {             @Override             public int compare(Integer arg0, Integer arg1) {                 return (int) (arg1 – arg0);             }         });     }     protected void cleanup(Context context) throws IOException, InterruptedException {         for (int i = 1; i < list.size() + 1; i++) {             context.write(new IntWritable(i), new IntWritable(list.get(i – 1)));         }     } 一个内容如下的文件经过该程序处理后的输入结果为() 23 45 15 67 8

加载更多