[Algorithm]大数据量处理的题目

本文探讨了在内存限制条件下处理大规模数据集的有效方法,包括通过哈希分段来寻找两个大型文件中的共同URL,以及如何对大量文件中的查询按频率排序,并从单一文件中找出出现频率最高的100个词。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Q:

1. 给你A,B两个文件,各存放50亿条URL,每条URL占用64字节,内存限制是4G,让你找出A,B文件共同的URL。  
2. 有10个文件,每个文件1G, 每个文件的每一行都存放的是用户的query,每个文件的query都可能重复。要你按照query的频度排序
3. 有一个1G大小的一个文件,里面每一行是一个词,词的大小不超过16个字节,内存限制大小是1M。返回频数最高的100个词

 

A:
1.对于第一个题,网上有的解法是按照hash分段,通过对url求hash值,按照hash值进行分段,每一段存放一个文件,分段要求尽量将子文件的大小不 超过内存要求,如果一个段太大,我们利用再hash,对子文件在进行hash分段。如果最好一个段还是很大,就使用外排。这样,两个大文件就都分段成了可 以放在内存里的小文件,由于相同的url一定在一个段中,所以要查找相同的url只需要在相同的段中进行查找。

 

2.3.。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值