Lucene 索引文件的读取(十四)之fdx&&fdt&&fdm

在前几篇索引文件的读取的系列文章中,我们介绍索引文件tim&&tip的读取时机点时说到,在生成StandardDirectoryReader对象期间,会生成SegmentReader对象,该对象中的StoredFieldsReader信息描述了索引文件fdx&&fdt&&fdm中所有域的索引信息,故我们从本篇文章开始介绍索引文件fdx&&fdt&&fdm的读取。

StoredFieldsReader

  在生成StandardDirectoryReader阶段,就已经开始读取索引文件fdx&&fdt&&fdm实现一些初始化,为随后的搜索阶段做准备,读取后的信息用StoredFieldsReader来描述。

.fdm

图1:

  .fdm文件中存储了元数据,即描述存储域数据的信息,它包含的所有数据将被完整的读入到内存中。

.fdx

图2:

  通过索引文件.fdm中的StartPointsIndex与NumDocsIndex的差值来确定在索引文件.fdx中的一段数据区间,该区间中存储了chunk中的文档数量,同理SPEndPointer与StartPointsIndex的差值确定在索引文件.fdx中的一段数据区间,该区间中存储了每个chunk在索引文件.fdt中的起始读取位置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值