基于Hadoop分布式网络爬虫系统的优化研究

来源 :北京工业大学 | 被引量 : 0次 | 上传用户:TTjj09
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
近些年互联网上的网页成指数级爆增,在这样一个大数据时代的背景下,由于单机爬虫自身有限的计算和存储的能力已经远远不能满足对数据的抓取,随着分布式技术平台的崛起,为这一棘手的难题带来了福音。将网络爬虫系统与分布式平台融为一体可以完美的解决大规模网页的抓取与存储等一系列困难。所以在大数据时代的背景下,对于Hadoop平台与爬虫系统结合的分布式爬虫系统的研究非常有价值。这里对分布式爬虫领域里非常关键的算法(任务调度算法与URL去重算法)深入分析,发现它们的缺陷,然后在分布式平台中对其完善和优化。任务调度算法是分布式爬虫中一个很关键的算法,假如任务分配不当,会严重的降低集群的爬取效率。第三章对比较优秀的基于加权轮转的任务调度算法做了深入分析,提出了一种带反馈的动态的加权轮转任务调度算法,在充分发挥加权轮转任务调度优点的基础上克服了其固定权重所带来的负面影响,是系统达到一个很好的负载均衡。URL去重算法是严重制约爬取效率的一个算法,如果去重算法设计的不好,就会出现连续爬相同的网页,还有可能陷入死循环。基于Bloom Filter的去重采用的不是存储元素本身,节约了大量的存储空间,这在大数据的今天尤为重要,并且其插入和查询元素复杂度非常低,且其里面的位数组数据结构也非常容易实现。但有一点它存在误判率问题。第四章对其深入分析,找出误判率的本质所在,结合爬取的URL的特点对标准Bloom Filter进行了改进,提出了MBF过滤器,并将其运用于Hadoop分布式爬虫系统里,在充分发挥了Bloom Filter的优点的同时有效的降低了Bloom Filter带来的误判率问题。最后基于第三章第四章改进的两个关键算法对分布式网络爬虫系统进行了设计与实现。通过需求分析、流程分析、系统的概要设计(包括物理框架设计和逻辑框架设计)、模块设计、数据存储结构的设计,对分布式爬虫系统进行了详细的实现,最后对分布式爬虫系统进行了一些测试。
其他文献
主要介绍血吸虫病在多个染病者群体传播的S-DI模型,对于两种不同的发生率产生不同的模型,分别求出其平衡点及疾病爆发的阈值,并且分别判断出无病平衡点和地方病平衡点的局部
目的:研究比较舒芬太尼与瑞芬太尼靶控输注对老年患者全麻诱导过程中应激反应的影响。方法:选择择期全麻手术老年患者40例,年龄在65~75岁,分为舒芬太尼(S)组和瑞芬太尼(R)组,每组20例。
介绍了一种潜水电机高压橡套软电缆接头工艺,此工艺已成功运用于几十台高压潜水电机的制造,实践表明其操作简便易行,适用于工业生产,完全满足设计的要求。
是什么样的力量,让一个柔弱女子强忍失去丈夫、离弃幼子的巨大悲恸继续革命?是什么样的意志,让一副血肉之躯在严刑拷打、死亡威胁面前始终坚贞不屈?近日,记者在川渝大地探访
以柳州市工人医院检验科的实验室信息系统(Laboratory Information System,LIS)应用为例,介绍了LIS的功能、工作流程、应用效果评价,提出新形势下应进一步拓展LIS的功能,把分析前的
知识产权质押融资在实务中发展缓慢的重要原因是知识产权质押评估价值不够客观、缺乏公信力。本文以知识产权的市场价值作为质押价值,在市场调查的基础上,通过因子分析法构建
调整利率是中央银行运用货币政策手段调节国民经济的一项重大举措。今年10月23日利率在去年连续两次下调的基础上再次下调而且幅度较大。在这种情况下,金融工作者应注意做好
危重症临床监护信息系统是一个计算机化的患者资料整理记录工具,利用计算机的功能,联机监护仪,实现患者信息的采集、存储、展现和处理,为临床提供便捷服务。我院ICU通过使用“危
目的:探讨大肠癌患者围手术期输血与术后感染的关系。方法:回顾性地分析了271例大肠癌患者围手术期输血情况及与术后感染发生率的联系。结果:271例大肠癌中有149例进行了圉手术
中新网消息据外媒18日报道,全球超过40亿人每年有至少一个月面临水资源严重短缺问题,受波及人口占全球总人口三分之二,显示全球水资源短缺情况比预想严峻。美国期刊《科学进