5G的文本TXT文件,按行存放URL,去重

来源:互联网 发布:桌面软件 编辑:程序博客网 时间:2024/05/16 15:04

== 问题

-- 问题:5G的文本TXT文件,按行存放URL,设计去重

        -- 条件:1G内存的机器


-- 布隆过滤器,做过爬虫的程序员,会立马想到;


这里如果按常规方式,该如何入手呢

先说思想解决,不说实际代码实现;


1. 内存1G,所以大文件首先要分割;如分割为20个文件,那么每个可以做到接近250M左右

2. 拿前面的3个文件做案例:

A B C  3个文件,每个250M;首先做到加载没有问题


1.A 文件读取到SetA中,此时集合中A的URL不重复

2.B文件读取到SetB中;

3.SetA 和SetB比较,将集合A和B中相同项都剔除;

4.清空SetB;

5.加载C文件;SetA 和SetC比较,将集合A和C中相同项都剔除;

6.前三个文件A比较完成,生成和B,C文件完全不重复的A1文件


依次类推:

总拿前面的一个文件内容和后面文件对比,对比一轮完成的那个文件;

就绝对是完全不重复的内容了













原创粉丝点击