基于Hadoop分布式网络爬虫技术的研究
发布时间:2023-10-13 21:29
随着网络技术的发展,互联网上站点越来越多,简单的网络爬虫已经不能实现对某些大型站点的大数据存储。解决该问题的最关键是引入分布式存储技术。Hadoop是具有分布式存储HDFS(Hadoop Distributes File System)和分布式计算MapReduce功能的软件框架,因此对基于Hadoop的分布式网络爬虫的研究具有重要的意义。 本文对Hadoop存储系统和网络爬虫技术分析后,对计算URL权重算法进行了改进,搭建了分布式爬虫的整体架构,设计并实现了各个爬虫模块。文中主要研究如下: (1)传统的URL权重算法只考虑了网页的目录深度和重要度,本文改进的算法中增加了对网页内容重要度的考虑,提高了URL计算权重的精度。 (2)由于在网络爬虫抓取过程中需要频繁的解析URL,导致对DNS服务器的压力过大。本文采用了DNS缓存技术,实现了在短时间内解析同一主机名下的URL时,将之前解析过且被存在缓存中的结果直接进行利用。 (3)为了解决爬虫过程中爬取链接重复的问题,采用了布隆过滤器对URL进行消重的方法。在更新模块设计了网页更新算法,该算法是只有在网页变化时,才将新的URL加入到未访问的...
【文章页数】:59 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
1 绪论
1.1 课题研究背景
1.2 课题的研究意义
1.3 国内外研究现状
1.3.1 Hadoop相关技术的国内外研究现状
1.3.2 分布式爬虫研究现状
1.4 本文的主要组织和结构
2 网络爬虫与分布式系统相关技术研究
2.1 Hadoop分布式平台
2.1.1 分布式文件系统HDFS
2.1.2 Map/Reduce分布式计算模型
2.2 网络爬虫原理
2.2.1 网络爬虫的物理结构
2.2.2 网络爬虫的基本结构
2.2.3 分布式网络爬虫
2.4 本章小结
3 分布式网络爬虫设计
3.1 分布式网络爬虫架构设计
3.1.1 单线程网络爬虫
3.1.2 分布式网络爬虫结构设计
3.2 分布式网络爬虫的核心算法
3.2.1 网页多线程抓取机制
3.2.2 改进的网页权重评估算法
3.2.3 DNS缓存
3.2.4 URL去重算法
3.2.5 网页更新算法
3.3 分布式网络爬虫模块设计
3.3.1 URL初始化功能模块化设计
3.3.2 分布式爬虫循环抓取模块设计
3.4 分布式网络爬虫数据存储设计
3.5 本章小结
4 分布式爬虫具体实现
4.1 Hadoop环境搭建
4.1.1 Hadoop硬件环境和物理结构
4.1.2 Hadoop集群实践环境
4.2 分布式网络爬虫控制界面实现
4.3 分布式网络爬虫各模块的具体实现
4.3.1 种子URL插入模块实现
4.3.2 URL任务列表生成模块实现
4.3.3 网页抓取模块实现
4.3.4 数据更新模块实现
4.3.5 分布式爬虫抓取结果
4.4 本章小结
5 性能测试分析
5.1 网络爬虫线程性能测试与分析
5.2 DNS缓存技术性能测试与分析
5.3 URL权重计算算法比较测试与分析
5.4 爬虫节点的性能测试与分析
5.5 爬虫对比测试与分析
5.6 本章小结
结论和展望
参考文献
致谢
作者简介及读研期间主要科研成果
本文编号:3853806
【文章页数】:59 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
1 绪论
1.1 课题研究背景
1.2 课题的研究意义
1.3 国内外研究现状
1.3.1 Hadoop相关技术的国内外研究现状
1.3.2 分布式爬虫研究现状
1.4 本文的主要组织和结构
2 网络爬虫与分布式系统相关技术研究
2.1 Hadoop分布式平台
2.1.1 分布式文件系统HDFS
2.1.2 Map/Reduce分布式计算模型
2.2 网络爬虫原理
2.2.1 网络爬虫的物理结构
2.2.2 网络爬虫的基本结构
2.2.3 分布式网络爬虫
2.4 本章小结
3 分布式网络爬虫设计
3.1 分布式网络爬虫架构设计
3.1.1 单线程网络爬虫
3.1.2 分布式网络爬虫结构设计
3.2 分布式网络爬虫的核心算法
3.2.1 网页多线程抓取机制
3.2.2 改进的网页权重评估算法
3.2.3 DNS缓存
3.2.4 URL去重算法
3.2.5 网页更新算法
3.3 分布式网络爬虫模块设计
3.3.1 URL初始化功能模块化设计
3.3.2 分布式爬虫循环抓取模块设计
3.4 分布式网络爬虫数据存储设计
3.5 本章小结
4 分布式爬虫具体实现
4.1 Hadoop环境搭建
4.1.1 Hadoop硬件环境和物理结构
4.1.2 Hadoop集群实践环境
4.2 分布式网络爬虫控制界面实现
4.3 分布式网络爬虫各模块的具体实现
4.3.1 种子URL插入模块实现
4.3.2 URL任务列表生成模块实现
4.3.3 网页抓取模块实现
4.3.4 数据更新模块实现
4.3.5 分布式爬虫抓取结果
4.4 本章小结
5 性能测试分析
5.1 网络爬虫线程性能测试与分析
5.2 DNS缓存技术性能测试与分析
5.3 URL权重计算算法比较测试与分析
5.4 爬虫节点的性能测试与分析
5.5 爬虫对比测试与分析
5.6 本章小结
结论和展望
参考文献
致谢
作者简介及读研期间主要科研成果
本文编号:3853806
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/3853806.html