题目描述

有一个大小10G的文件存放一大堆数字,仅使用100MB内存,统计哪个数字出现次数最多

特例

数字范围很小

谁来都行

第三方数据库

redis、mysql

Map-Reduce

每次处理一点,将变量存储转换成双变量存储:

1 1 2 2 3 3 3 6 6 6 6 .... 6 6 5 5
1 2, 2 2, 3 3 .... 6 2, 5 2, 6 4

根据数字大小分类,map后reduce先去重,单文件统计出现最多的,然后全局更新。