在网上看了一些这方面的资料,参考了许多的博客,然后自己按照自己的理解整合了一下相关问题。
1. hash映射 + hash统计(分治的思想);
(1) 海量日志数据,提取出某日访问百度次数最多的那个IP。
首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件(保证相同的ip都分在了同一个文件里),再找出每个小文中出现频率最大的IP(可以采用hash_map对那1000