比如,你有两个索引文件,mydir1和mydir2,他们分别由Nutch单独构建,它们的目录结构是:
crawldb
index
indexes
linkdb
segments
现在需要对这两个索引文件mydir1和mydir2进行合并为一个mydir,可使用命令:
1.合并linkdb
bin/nutch mergelinkdb mydir/linkdb mydir1/linkdb/ mydir2/linkdb/
2.合并crawldbs
bin/nutch mergedb mydir/crawldb mydir1/crawldb/ mydir2/crawldb/
3.合并segments
bin/nutch mergesegs mydir/segments mydir1/segments/* mydir2/segments/*
在数GB的数据量的情况下不能成功,我使用了5台机器,合并100G的数据,到百分之0.04时几乎不动了,我认为Nutch不大赞同大数量的 segments合并,segments在检索中起到的作用仅仅是快照作用,因此可以考虑,不要合并segments,自己搞定大数据的快照服务就行。
4.Invertlinks
bin/nutch invertlinks mergeaall/linkdb/ mergeaall/segments/*
5.create nutch index
bin/nutch index mydir/indexes mydir/linkdb/ mydir/crawldb/ mydir/segments/*
6.通过直接meger index 可以快速把索引合并的问题搞定,综合3解决Nutch的索引合并。
merge index
nutch merge mydir/index mydir1/indexes mydir2/indexes
没有评论:
发表评论