MR去重
数据去重:
"数据去重"主要是为了掌握和利用并行化思想来对数据进行有意义的筛选。
统计大数据集上的数据种类个数、从网站日志中计算访问地等这些看似庞杂的任务都会涉及数据去重。
下面就进入这个实例的MapReduce程序设计。
设计思路
数据去重的最终目标是让原始数据中出现次数超过一次的数据在输出文件中只出现一次。
我们自然而然会想到将同一个数据的所有记录都交给一台reduce机器,无论这个数据出现多少次,只要在最终结果中输出一次就可以了。
具体就是reduce的输入应该以数据作为key,而对value-list则没有要求。
当reduce接收到一个<key,value-list>时就直接将key复制到输出的key中,并将value设置成空值。
(reduce中的key表示的是我们要统计的数据例如2012-3-7 c,另外的value可以理解为一个序号,没有太大的作用,可理解为无意义数据)
在MapReduce流程中,map的输出