毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

垂直网站网络分布式爬虫的设计与实现(6)

时间:2022-01-19 22:45来源:毕业论文
crawldb:包含 Nutch 所发现的所有 URL,以及 URL 是否被抓取、何时被抓取等信息。 linkdb:包含 Nutch 所发现的 crawldb 文件夹中的 URL 所对应的全部链接,以及源

crawldb:包含 Nutch 所发现的所有 URL,以及 URL 是否被抓取、何时被抓取等信息。

linkdb:包含 Nutch 所发现的 crawldb 文件夹中的 URL 所对应的全部链接,以及源 URL

和锚文本。

本科毕业设计说明书 第 5  页

segments:包多个以时间命名的 segment 文件夹。每个 segment 即为一个抓取单元,个包 含一系列的 URL,每个 segment 又包含如下文件夹:

crawl_generate:待抓取的 URL crawl_fetch:每个 URL 的抓取状态 content:从每个 URL 抓取到的原始内容 parse_text:从每个 URL 解析得到的文本

parse_data:从每个 URL 解析得到的外链和元数据

crawl_parse:包含外链 URL,用以更新 crawldb

2。1。2nutch 爬取过程

Nutch 爬取主要通过两种方式:bin/crawl 命令一键式爬取和分步抓取。

(a)  bin/crawl 一键式爬取可通过如下的命令实现

Usage:  crawl  [-i|--index]  [-D "key=value"]   <Seed Dir>  <Crawl Dir>  <Num Rounds>

-i|--indexIndexes   crawl  results  into  a configured  indexer

-D A Java property to pass to Nutch  calls

Seed Dir  Directory  in  which  to look for  a seeds file

Crawl Dir Directory where the crawl/link/segments dirs are saved Num Rounds  The  number  of rounds  to run this  crawl  for

其中-i 表示索引器将爬取结果生成索引

-D 表示传递给 nutch 请求的 java 参数

Seed Dir 表示存放 url 的文件夹

Crawl Dir 表示存放爬取数据的文件夹

Num Round 表示爬取深度

(b) 分步抓取 分步抓取可以通过以下步骤实现:

第 6  页 本科毕业设计说明书 

2。2Hadoop 简介

图 2。2 nutch 分步抓取流程图

Apache Hadoop 是一个开源软件框架,用于在用商业硬件制造的计算机集群上的大数据 的分布式存储和分布式处理[15]。Hadoop 所有模块的设计都遵循一个基本的假设:硬件故障是 经常发生的,应该由框架自动处理。文献综述

Apache Hadoop 的核心由一个叫 Hadoop 分布式文件系统(Hadoop Distributed File System, HDFS)的存储部分和一个叫 MapReduce 的处理部分构成[16]。Hadoop 将大容量文件拆分成数 据块,然后在一个集群上的结点之间分发这些拆分的数据块。出于数据处理的需求,Hadoop 根据需要被处理的数据向结点并行发送打包代码。这种方法利用了数据局部性优势(即由结点 操作结点能够访问到的数据),相对于传统的依赖于并行文件系统的超级计算机体系结构, Hadoop 对数据集的处理更加高效,而 Hadoop 系统中的计算和数据通过高速网络分布在分布 式文件系统中。

如图 2。2 所示,Apache  Hadoop 框架由以下几个模块组成:

Hadoop Common 模块:包含其它 Hadoop 模块所需的库和实例。

本科毕业设计说明书 第 7  页 模块:一个在商业机器上存储数据的分布式文件系统,为整个集群提供高速的总带宽。 Hadoop YARN 模块:一个资源管理平台,负责管理集群中的计算资源,并使用计算资源

调度用户应用程序。

Hadoop MapReduce 模块:一个 MapReduce 程序实例,用于大规模数据处理。

2。3 solr 简介

图 2。3 Hadoop 集群结构图

Solr 是一款基于 Apache Lucene 工程的通过 java 编写的开源企业搜索引擎(加入文献)。 其主要功能包括标识高亮、全文检索、动态聚类、分面搜索、实时索引、数据库集成、NoSql 支持和富文本处理[6]。Solr 引擎具有很强的扩展性和容错性,并且能够提供分布式搜索和索 引复制等功能。Solr 是继 Elasticsearch 之后第二大最受欢迎的企业级搜索引擎。 垂直网站网络分布式爬虫的设计与实现(6):http://www.youerw.com/jisuanji/lunwen_88713.html

------分隔线----------------------------
推荐内容