欢迎来到Xugang的小屋
-
FieldComparator&&LeafFieldComparator(Lucene 7.5.0)
当满足搜索要求的文档被TopFieldCollector收集后,我们可以通过FieldComparator类来对这些结果(文档document)进行排序,并同时可以实现TopN的筛选。 排序类型 在介绍如果通过FieldComparator... -
BinaryDocValues(Lucene 7.5.0)
BinaryDocValues同 SortedDocValues、SortedNumericDocValues一样,在实际应用中最多的场景用于提供给搜索结果一个排序规则。在搜索结果的排序阶段,实际是按照BinaryDocValuesFiled的域... -
SortedSetDocValues(Lucene 7.5.0)
SortedNumericDocValues的索引结构跟SortedDocValues几乎是一致的,所以本文不会赘述跟SortedDocValues相同部分的内容,只介绍不同的部分数据结构。两种DocValue的最常用的使用场景就是对搜索结果进行排序... -
SortedNumericDocValues(Lucene 7.5.0)
SortedNumericDocValues的索引结构跟NumericDocValues几乎是一致的,所以本文不会赘述跟NumericDocValues相同部分的内容,只介绍不同的部分数据结构。两种DocValue的最常用的使用场景就是对搜索结果进行... -
NumericDocValues(Lucene 7.5.0)
本篇文章只是介绍NumericDocValues在.dvd、.dvm文件中的数据结构,NumericDocValues的应用跟概念介绍不会在本篇文章中赘述,大家可以参考官方文档给出的介绍。.dvd、.dvm文件存放了所有DocValues的信息,所以... -
FixedBitSet(Lucene 7.5.0)
FixBitSet类在Lucene中属于一个工具类(Util),它的其中一个用途用来存储文档号,用一个bit位来描述(存储)一个文档号。该类特别适合存储连续并且没有重复的int类型的数值。最好情况可以用8个字节来描述64个int类型的值。下面通过介绍... -
索引文件之tim&&tip(Lucene 7.5.0)
.tim(TermDictionary)文件中存放了每一个term的TermStats,TermStats记录了包含该term的文档数量,term在这些文档中的词频总和;另外还存放了term的TermMetadata,TermMetadata记录... -
索引文件之doc(Lucene 7.5.0)
索引文件.doc中按块(block)的方式存放了每一个term的文档号、词频,并且保存skip data来实现块之间的快速跳转,本篇只介绍.doc文件的数据结构,其生成过程见文章索引文件的生成(一)。 doc文件的数据结构 图1: Ter... -
索引文件之pos&&pay(Lucene 8.4.0)(Lucene 7.5.0)
position在Lucene中描述的是一个term在一篇文档中的位置,并且存在一个或多个position。 payload是一个自定义的元数据(mete data)来描述term的某个属性,term在一篇文章中的多个位置可以一一对应多个pa... -
索引文件之nvd&&nvm(Lucene 7.5.0)
nvd&&nvm用来存储域的标准化值(normalization values),这两个索引文件记录了每一篇文档中每一种域的标准化值跟索引信息。在Lucene 7.5.0中,标准化值的计算实际就是统计一篇文档中某个域的域值,这个域值经...