记录一个问题: 有一个 10G 大小的文件, 文件内为一行一个的整数, 给定可使用内存为 2G. 要求统计出现次数最多的数字.
1, 流式数据处理 (这块后面单独写吧, 埋坑....)
2, 分文件处理
读入部分文件, 对数值模 10. 取值相同放入一个文件. 然后处理 10 个文件. 统计出现次数最多的.
我认为上面这种方案可以解决一种情况. 就是文件数值不重复. 或者重复较少的情况
假设一种极端情况. 文件内容全部取模值全部相同. 或者超过 2G 就不在适用上面的方法了. 而更适合将相同的数字放入同一个文件.
情况不同解决方案也不尽相同. 没有银弹
---------------------
来源: http://www.bubuko.com/infodetail-3087001.html