Java实现单词计数MapReduce

简介: 本文分享实现单词计数MapReduce的方法

单词计数:Hadoop Word Count

实现代码:

import java.util.*;

/**
 * 单词计数
 */
public class WordCount {

    private interface OutputCollector<K, V> {
        void collect(K key, V value);
    }

    public static class Map {
        public void map(String key, String value, OutputCollector<String, Integer> output) {
            StringTokenizer tokenizer = new StringTokenizer(value);
            while (tokenizer.hasMoreTokens()) {
                String word = tokenizer.nextToken();
                output.collect(word, 1);
            }
        }
    }

    public static class Reduce {
        public void reduce(String key, Iterator<Integer> values, OutputCollector<String, Integer> output) {
            int sum = 0;
            while (values.hasNext()) {
                sum += values.next();
            }
            output.collect(key, sum);
        }
    }

}
相关文章
|
5月前
|
Java
【java】poi 设置允许西文在单词中间换行
【java】poi 设置允许西文在单词中间换行
|
2月前
|
存储 自然语言处理 Java
|
3月前
|
分布式计算 Java Hadoop
如何在Java中使用MapReduce
如何在Java中使用MapReduce
|
4月前
|
分布式计算 Java Hadoop
简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行
简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行
43 0
|
4月前
|
分布式计算 自然语言处理 大数据
【大数据】MapReduce JAVA API编程实践及适用场景介绍
【大数据】MapReduce JAVA API编程实践及适用场景介绍
89 0
|
4月前
|
算法 Java Go
【经典算法】LeetCode 58.最后一个单词的长度(Java/C/Python3/Go实现含注释说明,Easy)
【经典算法】LeetCode 58.最后一个单词的长度(Java/C/Python3/Go实现含注释说明,Easy)
28 0
|
4月前
|
存储 算法 Java
【经典算法】LeetCode 151. 反转字符串中的单词(Java/C/Python3实现含注释说明,中等)
【经典算法】LeetCode 151. 反转字符串中的单词(Java/C/Python3实现含注释说明,中等)
60 0
|
5月前
|
分布式计算 资源调度 Hadoop
java与大数据:Hadoop与MapReduce
java与大数据:Hadoop与MapReduce
47 0
|
5月前
|
小程序 Java
java猜数字游戏并计数
java猜数字游戏并计数
35 4
|
5月前
|
存储 Java
Java代码实现单词大小写
Java代码实现单词大小写
42 0
下一篇
无影云桌面