Nutch Crawler 工作流程及文件格式详细分析Crawler 和 Searcher 两部分被尽是分开,其要紧目的是为了使两个部分能够布地配置在硬件平台上,例如 Crawler 和 Searcher 分不被放置在两个主机上,如此能够极大的提升灵活性和性能
一、总体介绍: 1、先注入种子 urls 到 crawldb 2、循环:generate 从 crawldb 中生成一个 url 的子集用于抓取 fetch 抓取上一小的 url 生成一个个 segment parse 分析已抓取 segment 的内容 update 把已抓取的数据更新到原先的 crawldb 3、从已抓取的 segments 中分析出 link 地图 4、索引 segment 文本及 inlink 锚文本二、有关的数据结构: Crawl DB● CrawlDb 是一个包含如下结构数据的文件: ● CrawlDatum: ● Status: {db_unfetched, db_fetched, db_gone,linked, fetch_success, fetch_fail, fetch_gone} 爬虫 Crawler: Crawler 的工作流程包括了整个 nutch 的所有步骤--injector,generator,fetcher,parseSegment, updateCrawleDB,Invert links, Index ,DeleteDuplicates, IndexMerger Crawler 涉及的数据文件和格式和含义,和以上的各个步骤有关的文件分不被存放在物理设备上的以下几个文件夹里,crawldb,segments,indexes,linkdb,index 五个文件夹里
那么各个步骤和流程是如何,各个文件夹里又是放着什么呢
观看 Crawler 类能够明白它的流程