如何在Mapreduce中编写伪代码?

时间:2016-12-20 16:48:27

标签: hadoop mapreduce pseudocode

假设必须分析大量的Webserver-Access-Logs。这些日志是文本文件,它们每行登记一次访问。第一个(由空格分隔)列包含所访问页面的URL。目的是创建一个报告,列出所有URL以及命中数。如何为每一步写一个伪代码?

1 个答案:

答案 0 :(得分:0)

基本上你所做的只是WordCount,但有URL。

剥离" psudeocode" straight from the tutorial

class Mapper {

    final IntWritable ONE = new IntWritable(1);

    map(LongWritable key, Text value, Context context)  {
        String[] columns = value.split(" ");
        String url = columns[0];
        context.write(url, ONE);
    }  

}

class Reducer {

    IntWritable result = new IntWritable();

    reduce(Text key, Iterable<IntWritable> values, Context context) {
        int sum = sum(values);
        result.set(sum);
        context.write(key, result);
    }
}