索引过程-merge index

是的,这部分没有使用job,这点我也想到了:)

 

功能:

将由之前多个reduces index后(严格来说是dedup后)进行索引 合并 ;

将dedup后的deleted flags index进行清除;

 

也许会问,为什么要合并 呢?对了,对于构建一个分布式搜索系统来说这一步是不需要的,严格来说是"no"的,因为这步是作用一个intract net crawler 来作为最后一步处理的。

 

过程:

将hdfs/local上的多份索引添加 到inexwriter中;

调用lcuene内置的merger;

将生成的索引 写入local tmp下,再move 到hdfs(如果使用hdfs)

 

其中第一步不会将hfds上的所有文件download到本地,lucene读hdfs文件的方式如同读本地一样,只要提供一个连续的数据流即可。之前看到有人说hfds文件不可以并行读取? 其实觉得这是不太必要的,因为默认都是64m/block,再者它本身也提供也定位查询功能,可以把remote上的files作为本地files来考虑即可。

你可能感兴趣的:(index)