一.概要
- MapReduce是一种编程模型,它是一种用于处理和生成大型数据集的实现。用户通过指定一个用来处理键值对(Key/Value)的map函数来生成一个中间键值对集合。然后,再指定一个reduce函数, 它用来合并所有的具有相同中间key的中间value 。
二.编程模型
- 由用户所编写的Map函数接收输入,并生成一个中间键值对集合。MapReduce这个库会将所有共用一个键的值组合到一起,传递给Reduce函数
- Reduce函数接收一个中间键以及该键的值得集合作为输入。它会将这些值合并起来,生成一组更小的值得集合。
案例
从大量文档统计计算出每一个单词出现的数量
map(String key, String value):
// key: document name
// value: document contents
for each word w in value:
EmitIntermediate