对于大数据的一些处理方法

问题:数据太大,在内存中无法一次性装入。

题1:给定一个大小超过100亿的文件,该文件是用来存储IP地址,找到出现次数最多的IP地址。
分析:100亿就是大约就是10G,对于现在的计算机而言,内存中无法容纳这么大的文件。
解决:将一个大文件切分为多个小文件,例如:我们可以将该100亿的大文件切分为1000个文件,即每个文件的大小大约就是10M,那么就可以在内存中容纳得下了。
那么,我们要怎么来切分这个100亿的大文件呢?平均分?很显然是不可以的,如果分到某个文件的IP地址出现的次数都是1次,那么该文件出现最多的IP就是这10M个IP。那么就会浪费很大的空间,不符合我们的预期。所以,在此我们可以采用哈希表的方式,对IP先转换为对应的整数,在对该数取模,将模相同的IP放在同一个文件之中,那么这样在同一个文件中出现IP相同的概率就会大一些。
然后我们就可以分别统计出这1000个文件中IP次数最多的IP,然后再将这1000个文件进行汇总。如下面的图解。

图解

题2:给定100亿个整数,找到其中只出现一次的整数。
分析:遇到这样的问题,我们首先想到的处理方法就是&#x

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值