基于DHT的分布式网络爬虫系统的可扩展重爬策略
1. 引言
网络搜索服务在日常生活中变得越来越重要,其可用性和有效性在很大程度上取决于底层爬虫系统的效率。如今,由于过去十年网络的巨大发展,构建一个实用且有效的搜索引擎系统已成为一项极其复杂的任务,需要大量的智力和资金投入,这使得小公司难以涉足。
受互联网计算和SETI@home项目的启发,大规模分布式网络爬虫系统(DWC系统)已在实践中得到应用。这些系统的基本概念是利用互联网用户自愿贡献的个人计算资源来从互联网本身检索网页内容,避免了维护大型计算机集群的成本。系统开发者通过反馈部分商业利润或提供独特服务来吸引计算机贡献者的参与。
之前提出的基于DHT的网络爬虫系统解决了节点 churn 和负载均衡问题。但以往的研究假设系统进行周期性爬取,这对于商业搜索引擎来说并不实际,商业搜索引擎通常采用增量爬取的方式。当前主要的信息发布者(如新闻网站、BBS 网站和博客网站)以非常高的速度生成新的网页内容,即使固定 URL 上的内容也会因 DOM 结构的变化以及评论和回复的增加而不断改变。因此,为了保持索引数据的最新状态,搜索引擎需要根据不同网站的更新频率应用不同的重爬间隔。
然而,仅根据网站的变化频率计算的重爬间隔可能与系统的实时容量不匹配,导致资源利用效率低下,会出现以下两种情况:
- 需求超过系统容量(REC) :重爬任务提交过于频繁,系统内的爬虫无法处理所有任务。许多任务会排队、超时甚至因爬虫异常退出而被移除,实际更新率低于预期重爬率。
- 需求低估系统容量(RUC) :系统有足够的容量执行所有重爬任务,但容量未得到充分利
超级会员免费看
订阅专栏 解锁全文
2091

被折叠的 条评论
为什么被折叠?



