zoukankan      html  css  js  c++  java
  • WordCount-JAVA版

    WordCountMapper

    import java.io.IOException;
    import org.apache.hadoop.io.IntWritable;
    import org.apache.hadoop.io.LongWritable;
    import org.apache.hadoop.io.Text;
    import org.apache.hadoop.mapreduce.Mapper;
    
    public class WordCountMapper extends Mapper<LongWritable, Text, Text, IntWritable> {
    	Text k = new Text();
    	IntWritable v = new IntWritable(1);
    
    	protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
    
    		String line = value.toString();
    
    		String[] words = line.split(" ");
    
    		for (String word : words) {
    			k.set(word);
    			context.write(k, v);
    		}
    	}
    }
    

     WordCountMapper

    import java.io.IOException;
    import org.apache.hadoop.io.IntWritable;
    import org.apache.hadoop.io.LongWritable;
    import org.apache.hadoop.io.Text;
    import org.apache.hadoop.mapreduce.Mapper;
    
    public class WordCountMapper extends Mapper<LongWritable, Text, Text, IntWritable> {
    
    	Text k = new Text();
    	IntWritable v = new IntWritable(1);
    
    	protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
    
    		String line = value.toString();
    
    		String[] words = line.split(" ");
    
    		for (String word : words) {
    			k.set(word);
    			context.write(k, v);
    		}
    
    	}
    }
    

      WordCountReducer

    import java.io.IOException;
    import org.apache.hadoop.io.IntWritable;
    import org.apache.hadoop.io.Text;
    import org.apache.hadoop.mapreduce.Reducer;
    
    public class WordCountReducer extends Reducer<Text, IntWritable, Text, IntWritable>{
    	
    	int sum;
    	IntWritable v = new IntWritable();
    
    	@Override
    	protected void reduce(Text key, Iterable<IntWritable> value, Context context)
    			throws IOException, InterruptedException {
    		// 1 累加求和
    		sum = 0;
    		for (IntWritable count : value) {
    			sum += count.get();
    		}
    		// 2 输出
    		v.set(sum);
    		context.write(key, v);
    	}
    
    }
    

      

     

  • 相关阅读:
    Who Gets the Most Candies? POJ
    Chrome DevTools谷歌浏览器开发者工具评估资源加载时间
    Array.isArray (Array) – JavaScript 中文开发手册
    CSS3 @keyframes 规则
    inherit (Values & Units) – CSS 中文开发手册
    CSS #id 选择器
    isgraph (Strings) – C 中文开发手册
    PHP juliantojd() 函数
    Navigator javaEnabled() 方法
    ionic checkbox
  • 原文地址:https://www.cnblogs.com/Jomini/p/11462513.html
Copyright © 2011-2022 走看看