论文部分内容阅读
搜索引擎面对不断爆炸性增长的互联网信息,为了保证搜索的全面性和页面的有效性,就要求有更短的更新周期,于是对Web Spider的采集效率提出了更高的要求。单机的Web Spider的采集效率明显不能满足搜索引擎的更新需求。目前的分布式并行Web Spider大都用C、C++、Fortran编写的PVM或MPI程序,或者直接用java开发,然而PVM或MPI程序,具有可移植性差,不便于扩展,配置复杂等缺点,直接用java开发,为了实现把本地对象转化成可用的远程对象,要求编程人员对库中现有代码做较大修改,这给编程人员增加了很大的负担,开发代价过高。URL去重算法对重复率高的URL集合去重效率不高。带有中心节点的整体架构不够合理,中心节点容易形成系统性能瓶颈,影响了系统的可扩展性。
针对Web Spider设计开发代价过高的不足,我们提出了一种利用ProActive网格网络并行分布计算中间件开发分布式Web Spider的新技术,并且用此技术设计开发了一个分布式并行Web Spider系统。实验证明利用此项技术,使得系统采集效率提高,部署配置变得更加灵活方便,开发代价大幅降低。然后,我们针对在Web Spider采集的高重复率URL集合上,目前系统中普遍采用的URL去重算法去重效率不高的不足做了改进,设计了基于Rabin算法的URL去重算法。通过理论分析和对比实验证明该去重算法在高重复率的URL集合上有更高的去重效率,有效提高了Web Spider的URL去重检索速度。最后,应用该改进的URL去重算法对Web Spider的系统架构做了改进,去除了系统的中心节点,设计开发了节点对等结构的分布式并行Web Spider。实验表明该系统架构减少了节点间的通讯量,平衡了各节点的工作负载,解决了系统的中心节点瓶颈问题,提高采集效率,改善了系统的可扩展性。本文的工作为设计开发高性能的Web Spider提供了新方法,新思路,也是ProActive中间件的一个新的应用,有一定的理论价值和较高的实用价值。