海量数据统计总结...

本文介绍了一种处理大规模数据集的有效方法,通过分而治之的策略,利用哈希映射和堆排序来统计和排序数据项的频率。具体案例包括基于query频度的排序及找出访问特定网站次数最多的IP地址。

1.有10个文件,每个文件1G,每个文件的每一行都存放的是用户的query,每个文件的query都可能重复。如何按照query的频度排序。

 

2.海量日志数据,提取出某日访问百度次数最多的那个IP。

 

 

对于这类问题, 通常要使用分而治之的思想, 因为内存中不能够存放的下所有的数据, 为了保证将海量数据分成几个小块后, 每个小块中的元素都互不相同, 也就是值相同的元素要被分到同一个数据块中, 可以使用hash的方法, hash(value) % n, n就是要分的块数, 这样在每个小块中在使用hash_map的方法统计每个value的频度, 再利用堆排序对每个小块的频度进行排序, 最后对所有的小块进行归并排序...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值