nutch的抓取目录解释
来源:互联网 发布:php array remove key 编辑:程序博客网 时间:2024/05/16 09:59
转载自:http://blog.csdn.net/javaman_chen/article/details/7180076
1、Apache Nutch
Apache Nutch是一个用于网络搜索的开源框架,它提供了我们运行自己的搜索引擎所需的全部工具,包括全文搜索和Web爬虫。
1.1、Nutch的组件结构
WebDB:存储网页数据和连接信息
Fetch lists:将WebDB所存储的连接分成多个组,来用于分布式检索
Fetchers:检索Fetch list中的内容并下载到本地,共有两项输出:分别是连接的update
信息和内容content
Updates:更新WebDB的页面检索状态
WebDB、updates、fetch lists和fetchers组成循环结构,不断运行下去,来确保所得到的Web镜像是最新的
Content:界面内容,获取内容之后,Nutch便可以根据它来创建索引并执行查询操作
Indexers:对目标Content创建索引,当索引内容较大时,可把索引划分成多个索引片段,然后分配给不同的seracher实现并行检索
Searchers:实现查询功能的同时也会缓存content
Webservers:有两种角色:
1处理用户的交互请求(Nutch Search Client)
2从searchers中获取查询结果(HTTP Server)注:fetchers和searchers两个节点所对应的操作可放到分布式环境(hadoop)中去完成
创建索引及查询的操作可通过solr框架来实现
1.2、Nutch的数据结构:
Nutch数据包含3个目录结构,分别是:
1、Crawldb:用于存储Nutch将要检索的url信息,以及检索状态(是否检索、何时检索)
2、Linkdb:用于存储每一个url所包含的超链接信息(包括锚点)
3、Segments:一组url的集合,他们作为一个检索单元,可用于分布式检索
Segment目录包含以下子目录信息:
(1) crawl_generate:定义将要检索的url集合(文件类型为SequenceFile)
(2) crawl_fetch:存储每一个url的检索状态(文件类型为MapFile)
(3) content:存储每一个url所对应的二进制字节流(文件类型为MapFile)
(4) parse_text:存储每一个url所解析出的文本内容(文件类型为MapFile)
(5) parse_data:存储每一个url所解析出的元数据(文件类型为MapFile)
(6) crawl_parse:用于及时更新crawldb中的内容(如要检索的url已不存在等情况)--文件类型为SequenceFile
注:结合Nutch的数据结构和组件结构来看,crawldb相当于WebDB,而segment相当于是fetchlists.
分布式crawl过程中,每个MapReduce Job都会生成一个segment,名称以时间来命名
- nutch的抓取目录解释
- nutch的抓取目录解释
- [Nutch]Nutch抓取过程中生成的目录内容分析
- 【Nutch】Nutch的抓取流程
- Nutch的抓取工作问题
- Nutch 查看抓取的文件
- nutch如何才能抓取到动态的url
- nutch抓取数据后生成的文件格式
- nutch抓取数据后生成的文件格式
- 提高Nutch局域网抓取的速度
- Nutch抓取数据内容的详解
- nutch的抓取流程 以及 手动实践
- 深入分析nutch的抓取流程
- Nutch抓取数据内容的详解
- nutch 产生的目录说明
- [Nutch]Nutch抓取过程分析
- [Nutch]查看Nutch生成目录下的具体内容
- Nutch抓取数据分析
- Lua 常用数据结构
- Excel导出
- 产品类的经验分享
- mysql命令行操作
- hbase shell删除键不听使唤
- nutch的抓取目录解释
- Zero Clipboard js+swf实现的复制功能使用方法
- android 自定义ProgressBar
- *【Wikioi】1983-等式问题
- 什么是MVC(IOS开发)
- jquery datatable
- jquery.动态添加标签和事件实现实例
- hive查询实战1
- block使用小结、在arc中使用block、如何防止循环引用