二次排序SecondarySort 例子出错

查看数: 7542 | 评论数: 1 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2016-3-24 10:11

正文摘要:

求大神指教一下,为什么有错误 package org.apache.hadoop.examples; import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; import java.util.StringTokenizer; import ...

回复

when30 发表于 2016-3-24 11:51:50
public static class MapClass extends Mapper<LongWritable,Text,IntPair,IntWritable>{

                private final IntPair inkey=new IntPair();
                private final IntWritable invalue=new IntWritable();
                @Override
                protected void map(LongWritable Key, Text Value, Context context)
                                throws IOException, InterruptedException {

                        StringTokenizer itr=new StringTokenizer(invalue.toString());
                        int left=0;
                        int right=0;
                        if(itr.hasMoreTokens()){
                                left=Integer.parseInt(itr.nextToken());
                                if(itr.hasMoreTokens()){
                                        right=Integer.parseInt(itr.nextToken());

                                }
                                inkey.set(left, right);
                                invalue.set(right);
                                context.write(inkey, invalue);

                        }

                }

                public static class ReduceClass extends Reducer<IntPair,IntWritable,Text,IntWritable>{

                        private final Text SEPARATOR=new Text("--------------------------------------");
                        
                        private final Text first=new Text();

                        @Override
                        protected void reduce(IntPair key, Iterable<IntWritable> values,
                                Context context)
                                        throws IOException, InterruptedException {
                                context.write(SEPARATOR, null);
                                first.set(Integer.toString(key.getFirst()));
                                for(IntWritable value:values){
                                        context.write(first, value);

                                }

                        }


                }



楼主上面放到函数的含义是什么?
能否放到里面

关闭

推荐上一条 /2 下一条