在文章SegmentReader(一)中,我们介绍了SegmentReader对象,它用于描述一个段中的索引信息,并且说到SegmentReader对象中包含了一个SegmentCoreReaders对象。

图1:

  图1中,蓝框标注的两个对象用于描述DocValues的索引信息,而红框标注的SegmentCoreReader则描述了下面的索引信息,注意的是在文章SegmentReader(一)中是基于Lucene 7.5.0的:

表一:

对象 描述
StoredFieldsReader 从索引文件fdx&&fdt中读取存储域的索引信息
FieldsProducer 从索引文件tim&&tip、索引文件doc、索引文件pos&&pay中读取域的倒排信息
TermVectorsReader 从索引文件tvx&&tvd读取词向量的索引信息(用于高亮优化查询)
PointsReader 从索引文件dim&&dii中读取域值为数值类型的索引信息
NormsProducer 从索引文件nvd&&nvm中读取域的打分信息(作为对文档进行打分的参数)
FieldInfos 从索引文件fnm读取域的信息

  在文章SegmentReader(一)中,并没有对每一种索引文件进行详细的读取过程的介绍,故索引文件的载入的系列文章对此将详细的展开。

  该系列文章将要介绍的内容可以概述为这么一句话:在初始化一个读取索引信息的reader期间,索引文件如何被读取(载入)。由于只是初始化一个reader,而不是处于一个查询阶段,所以只有部分索引文件的信息会被载入到内存中。

索引文件的载入顺序

  在SegmentCoreReader类的构造函数中可以看出表一中对应的索引文件的载入顺序:

图2:

  上文中说到,SegmentCoreReader对象是被包含在SegmentReader对象中,故在SegmentReader类的构造函数中,还可以看出DocValues对应的索引文件跟SegmentCoreReader对象中包含的索引文件的载入顺序:

剩余内容看这里:https://www.amazingkoala.com.cn/Lucene/Index/2021/0218/189.html

Lucene 索引文件的载入(一)之fdxfdtfdm相关推荐

  1. Lucene 索引文件的读取(十四)之fdxfdtfdm

    在前几篇索引文件的读取的系列文章中,我们介绍索引文件tim&&tip的读取时机点时说到,在生成StandardDirectoryReader对象期间,会生成SegmentReader对 ...

  2. Lucene 索引文件的生成(二十三)之fdxfdtfdm

    从本篇文章开始介绍用于描述存储域(存储域的概念见文章索引文件之fdx&&fdt&&fdm)的索引文件.fdx..fdt..fdm的生成过程,直接给出流程图: 图1:   ...

  3. Lucene 索引文件的读取(十五)之fdxfdtfdm

    本文承接文章索引文件的读取(十四)之fdx&&fdt&&fdm,继续介绍剩余的内容.为了更好的理解下文中的内容,建议先阅读文章DirectMonotonicWriter ...

  4. Lucene 索引文件的合并(三)之fdxfdtfdm

    本文承接文章索引文件的合并(二)之fdx&&fdt&&fdm,继续介绍剩余的内容,下面先给出索引文件fdx&&fdt&&fdm的合并流程 ...

  5. Lucene 索引文件之tvdtvxtvm

    在索引(Indexing)阶段,当某个域被设置为需要记录词向量(term vector)信息后,那么随后在flush阶段,该域对应的词向量将被写入到索引文件.tvd&&tvx& ...

  6. Lucene 索引文件的生成(二十五)之kddkdikdm

    在系列文章索引文件的生成(Lucene 7.5.0)中,我们介绍了存储维度(见文章Bkd-Tree)值大于等于2的数值类型对应的索引文件的生成过程.对于维度值等于1的情况,其生成过程有少许的不同.为了 ...

  7. Lucene 索引文件的合并(四)之kddkdikdm

    本篇文章开始介绍索引文件kdd&kdi&kdm的合并,由于维度值为1和维度值大于等于2的点数据对应的索引文件的合并方式有较大的差异,故我们分开介绍.本篇文章先对维度值为1的情况展开介绍 ...

  8. Lucene 索引文件之kddkdikdm

    从Lucene8.6.0开始,用于存储点数据(point value)的索引文件由原先的两个索引文件dim&&dii,改为三个索引文件kdd&kdi&kdm.由于生成k ...

  9. Luke 5—— 可视化 Lucene 索引查看工具,可以查看ES的索引

    Luke 5 发布,可视化 Lucene 索引查看工具  oschina 发布于2015年08月31日  这是一个主要版本,该版本支持 Lucene 5.2.0. 它支持 elasticsearch ...

最新文章

  1. LeetCode Best Time to Buy and Sell Stock with Cooldown(动态规划)
  2. AbilitySlice之间的回传值
  3. 虚拟机(VMware Workstation)中,把连接网络的模式由“NAT模式”,改成“自动桥接模式”,网速大大的提升...
  4. 带有Hibernate OGM的NoSQL –第二部分:查询数据
  5. filename: core/loader.php,使用第三方包后出现的这个错误,你们都遇到过吗?
  6. java jersey client,如何在Jersey-Client Java中实现重试机制
  7. HDFS写入HBase
  8. 【转】IE6 浏览器常见兼容问题 大汇总(23个)
  9. 修改mysql root 账号密码
  10. 图解:如何在LINUX中安装VM-Tools
  11. 【免费软件测试视频-0022】——Winrunner系列之---GUI快速脚本向导
  12. jszip 解压压缩包_Node.js使用jszip实现打包zip压缩包
  13. 安装算量软件使用_鹏业安装算量软件常用按钮汇总(三)
  14. sqlserver数据库快照和mysql_解析SQLServer视图、数据库快照_MySQL
  15. win10无法访问linux共享服务器,Win10无法访问NAS或Linux网络共享的处理方法
  16. html怎么跟微信公众号关联,微信视频号怎么关联公众号?一步一步教你!
  17. TensorFlow batch
  18. UI设计——网站收藏
  19. 图像插值(最近邻插值法 和 双线性插值法)
  20. 项目管理的主要内容包括哪些?盘点好用的项目管理系统软件

热门文章

  1. 做最好的自己(zz)
  2. (发外链技巧)哪里可以发外链
  3. sqlYog社区版免费下载地址
  4. 怎么把几个图片转换到一个PDF文件?怎么把多张图片合成pdf?
  5. 车牌识别笔记:从图像中定位并裁剪车牌照
  6. PyPI 仓库被曝多个 typosquatting 库,可触发供应链攻击
  7. 2021.11.17洛谷小鱼游泳进阶版——c语言
  8. 量子物理,真的和你没关系么?
  9. 快速排序(附优化方案)
  10. Vs2005下重复定义的问题解决