• mapreduce_template


    Hadoop Tutorial - YDN https://developer.yahoo.com/hadoop/tutorial/module4.html

    import java.io.IOException;
    import java.util.StringTokenizer;
    
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.Path;
    import org.apache.hadoop.io.IntWritable;
    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;
    
    public class test {
    
      public static class Map extends Mapper<Object, Text, Text, IntWritable>{
        
        private IntWritable one = new IntWritable(1);
        private Text word = new Text();
          
        public void map(Object key, Text value, Context context) throws IOException, InterruptedException {
            String inputValue=value.toString();//input
            context.write(word, one);//output
        }
      }
      
      public static class Reduce extends Reducer<Text,IntWritable,Text,Text> {
    
        private Text result = new Text("reduce");
        public void reduce(Text key, Iterable<IntWritable> values, Context context) throws IOException, InterruptedException {
           for (IntWritable val : values) {
                val.get();//get number
                val.toString();//get string
                val.toString().getBytes();//get byte[]
            }
          context.write(key, result);
        }
      }
    
      public static void main(String[] args) throws Exception {
        Configuration conf = new Configuration();
        String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs();
        if (otherArgs.length != 2) {
          System.err.println("Usage: <in> <out>");
          System.exit(2);
        }
        Job job = Job.getInstance(conf, "job name");
        job.setJarByClass(test.class);
        job.setMapperClass(Map.class);
        job.setCombinerClass(Reduce.class);
        job.setReducerClass(Reduce.class);
        job.setOutputKeyClass(Text.class);
        job.setOutputValueClass(Text.class);
        FileInputFormat.addInputPath(job, new Path(otherArgs[0]));
        FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));
        System.exit(job.waitForCompletion(true) ? 0 : 1);
      }
    }
  • 相关阅读:
    大数的四则运算
    整数划分问题(递归法)
    浅谈C++中内存分配、函数调用和返回值问题
    栈的模拟运用 SOJ3897 dance2
    C/C++:sizeof('a')的值为什么不一样?
    浅谈C++中指针和引用的区别
    n!的分解 soj 2666
    char *a 和char a[] 的区别(指针和数组的区别)
    错排公式的推导
    浅谈C语言中的指针
  • 原文地址:https://www.cnblogs.com/manhua/p/3591106.html
Copyright © 2020-2023  润新知