[lucene] indexing process 索引过程

indexing process

image

Extracting text and creating the document

将不同的数据转换成Document

Analysis

将Document经由一系列的过滤器,产生token stream

Adding to the index

分析后的token stream以Inverted index 保存。

index segments

三层结构

  • segments_<N>文件,保存每个segments文件的对应引用,N 代表索引改变的次数
    • segments file(_X.<ext>, X: segment’s name, <ext>: 代表什么类型的索引文件,term vectors, stored fields, inverted index) 每个segment 包含多个文件

index segments 管理

  • IndexWriter写索引到index segments, 当document 写数据到directory时会创建新的segment
  • 周期性,IndexWriter会选择segment合并成一个新的segment,避免产生过多的segment
  • 合并:由MergeScheduler调度使用MergePolicy对segment 进行合并
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容