APP下载

分布式爬虫系统中URL去重的设计与实现

2019-10-21陈宇伦周奎

现代信息科技 2019年11期

陈宇伦 周奎

摘  要:目前全球URL总数在350亿以上,在满足时效性的前提下,越来越多地选择采用分布式爬虫技术,它可以快速高效地从Web中获取有价值的数据。基于Redis数据库设计一种相关去重协议,实现URL去重,有利于提高分布式系统的稳定性和高效性,以及保持整个系统对URL去重的一致性。

关键词:分布式爬虫系统;URL去重;URL去重协议

(School of Electrical and Information Engineering,Hubei University of Automotive Technology,Shiyan  442002,China)

Abstract:There are more than 35 billion URLs in the world nowadays. Under the premise of satisfying the timeliness,more and more people choose to adopt distributed crawler technology,which can quickly and efficiently obtain valuable data from Web. Based on Redis database,this paper designs a kind of related de-reduplication protocol to realize URL de-reduplication,which is helpful to improve the stability and efficiency of distributed system,and to maintain the consistency of the whole system to URL.

Keywords:distributed crawler system;URL de-duplication;URL de-duplication protocol

0  引  言

随着移动互联技术的日益成熟和Web的飞速发展,Web这张网也愈来愈壮大。每天在这张网中产生大量的数据,蕴藏在这张网中的数据的价值不言而喻。从Web中快速而高效地挖掘数据成为各大公司的核心竞争力,要想高效地从Web中挖掘数据,分布式系统必不可少[1]。在分布式爬虫系统中也面临着各种复杂的挑战,比如分布式任务的调度、分布式系统中负载均衡、分布式系统中URL去重等。分布式系统中URL去重算法影响着系统的效率,面对上百亿的URL设计一个优秀的去重算法能提高整个系统的性能[2]。

1  分布式系统URL去重关键技术

1.1  Redis

Redis是开源的且遵循BSD协议,基于Key-Value的数据库,同时有着极高的性能以及提供多种数据结构的存储。分布式调度协议基于Redis数据库作为数据存储技术,实现分布式系统中URL去重。

基于Redis数据库URL去重协议的设计,将分布式系统划分为两层,分布式系统架构如图1所示。本地主机和中心主机,将中心主机作为单个网络节点,通过单个节点实现与本地网络和其他网络通信对URL去重[3]。

本地主机Redis服务(local_Redis)拥有三大数据库:(1)已完……

登录APP查看全文