阅读背景:

网络爬虫抓取页面的一种存储方法

来源:互联网 

   前言:

   网络爬虫抓取下来的页面,都是大文本,应该如何存储呢? 我觉得,如果存储在mysql 或是 sqlserver这种关系型数据库当中,应该不是很恰当的。首先,页面相对独立,基本没什么关系型可言,只有url或是描文本->页面这种简单的关系,而关系型数据库系统为了支持关系以及高效查询会增加很多额外的开销,这样得不偿失。不仅如此,爬虫在抓取页面工程中,效率应该很高,如果用关系型数据库存页面的华,短时间内会有大量的数据插入I/O,插入肯定会是一个瓶颈问题,这对数据库维护网络以及物理磁盘来说,压力也是比较大的。因此,我觉得直接存储为数据文本比较合适,开源的larbin爬虫,也采用的是文本方式的存储,但是它默认是为每个页面存储一个物理文件,我个人觉得这样的话,频繁的文件创建、写入、flush、关闭,系统开销也比较大的。 综合考虑我设计了一个方案,即一个物理文件存储多个页面,为了支持适当的查找和分割、合并操作,数据文件会对应一个索引文件。这样的话,在操作工程中,可以再索引文件中进行,索引文件相对数据文件要小得多,遍历或是查询会非常快。不仅如果,当进行数据合并的时候,只需要合并索引文件即可,这样会方便得多。   网络爬虫抓取下来的页面,都是大文本,应该如何存储呢? 我觉得,如果存储




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: