Lucene90BlockTreeTermsReader

A block-based terms index and dictionary that assigns terms to variable length blocks according to how they share prefixes. The terms index is a prefix trie whose leaves are term blocks. The advantage of this approach is that seekExact is often able to determine a term cannot exist without doing any IO, and intersection with Automata is very fast. Note that this terms dictionary has its own fixed terms index (ie, it does not support a pluggable terms index implementation).

NOTE: this terms dictionary supports min/maxItemsPerBlock during indexing to control how much memory the terms index uses.

The data structure used by this implementation is very similar to a burst trie (http://citeseer.ist.psu.edu/viewdoc/summarydoi=10.1.1.18.3499), but with added logic to break up too-large blocks of all terms sharing a given prefix into smaller ones.

Use org.gnit.lucenekmp.index.CheckIndex with the -verbose option to see summary statistics on the blocks in the dictionary.

See Lucene90BlockTreeTermsWriter.

Constructors

Link copied to clipboard
constructor(postingsReader: PostingsReaderBase, state: SegmentReadState)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open override fun checkIntegrity()

Checks consistency of this reader.

Link copied to clipboard
open override fun close()
Link copied to clipboard
open operator override fun iterator(): MutableIterator<String>

Returns an iterator that will step through all fields names. This will not return null.

Link copied to clipboard
open override fun size(): Int

Returns the number of fields or -1 if the number of distinct field names is unknown. If >= 0, .iterator will return as many field names.

Link copied to clipboard
open override fun terms(field: String?): Terms?

Get the Terms for this field. This will return null if the field does not exist.

Link copied to clipboard
open override fun toString(): String