http://blog.163.com/bit_runner/blog/static/53242218201141393943980/
Nutch的输出文件(不包括临时文件)主要可分为crawldb、index、indexs、linkdb和segments。
Crawldb
Crawldb是所有需要抓取的超连接信息
(另说:存放下载的URL,及下载的日期,用来页面更新检查时间)
Segments
① / ② crawldb/ linkdb : web link 目录,存放 url 及 url 的互联关系,作为爬行与重新爬行的依据,页面默认 30 天过期 (可以在 nutch-site.xml 中配置)
③ segments : 一存放抓取的页面,与上面链接深度 depth 相关, depth 设为 2 则在 segments 下生成两个以时间命名的子文件夹,比如 ” 20061014163012” ,打开此文件夹可以看到,它下面还有 6 个子文件夹,分别是
(来自apache http://lucene.apache.org/nutch/tutorial8.html ):
crawl_generate : names a set of urls to be fetched
crawl_fetch : contains the status of fetching each url
content : contains the content of each url
parse_text : contains the parsed text of each url
parse_data : contains outlinks and metadata parsed from each url
crawl_parse : contains the outlink urls, used to update the crawldb
④ indexes : 索引目录,我运行时生成了一个 ” part-00000” 的文件夹,
⑤ index : lucene 的索引目录(使用 luke 工具查看 ),是 indexs 里所有 index 合并后的完整索引,注意索引文件只对页面内容进行索引,没有进行存储,因此查询时要去访问 segments 目录才能获得页面内容
Segments是每轮抓取的时候根据crawldb生成的。存放的信息包括6种content、crawl_fetch、crawl_generate、crawl_parse、parse_data、parse_text。其中content是抓取下来的网页内容;crawl_generate最初生成(待下载URL集合);crawl_fetch(每个下载URL的状态)、content在抓取时生成;crawl_parse(包含用来更新crawldb的外链)、parse_data、parse_text在解析抓取的数据文件时生成。其中crawl_generate、crawl_fetch和crawl_parse是crawldb的部分url数据,它们格式一样,不同的是抓取时间、状态、签名等有所变化。格式如下:
////////////////////crawl_generate、crawl_fetch、crawl_parse、crawldb的格式//////////////
http://www.163.com/ Version: 4
Status: 5 (fetch_success)
Fetch time: Thu Oct 26 19:20:33 CST 2006
Modified time: Thu Jan 01 08:00:00 CST 1970
Retries since fetch: 0
Retry interval: 30.0 days
Score: 1.0
Signature: 3029c621e26c43797241a8d34980b2dc
Metadata: null
parse_data的格式如下: (主要是每个URL解析出的外部链接和元数据)
outlink: toUrl: http://cha.so.163.com/so.php?key=001001006&q=??? anchor: 手机
Content Metadata: nutch.crawl.score=1.0 nutch.content.digest=3029c621e26c43797241a8d34980b2dc Content-Type=text/html;
charset=GB2312 date=Thu, 26 Oct 2006 11:20:33 GMT Cache-Control=max-age=146
Content-Encoding=gzip Content-Length=19628 Connection=close Expires=Thu, 26
Oct 2006 11:23:00 GMT nutch.segment.name=20061026192026 Accept-Ranges=bytes
Server=Apache/2.0.55 (Unix) X-Cache=HIT from www.163.com Vary=Accept-Encoding
Parse Metadata: OriginalCharEncoding=GB2312 CharEncodingForConversion=GB2312
parse_text是网页的文本信息。
Index
据初步分析index由indexs合并而来的,存放的是索引信息。在非分布式搜索时优先根据查找index文件夹,如果不存在则查找indexs。Indexes:存放每次下载的独立索引目录
Linkdb
Linkdb中存放的是所有超连接及其每个连接的连入地址和锚文本。读取出来的格式如下: