Class BlockTreeTermsReader
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 it's own fixed terms index (ie, it
does not support a pluggable terms index
implementation).
NOTE: this terms dictionary does not support
index divisor when opening an IndexReader. Instead, you
can change the min/maxItemsPerBlock during indexing.
The data structure used by this implementation is very
similar to a burst trie
(http://citeseer.ist.psu.edu/viewdoc/summary?doi=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 CheckIndex with the -verbose
option to see summary statistics on the blocks in the
dictionary.
See BlockTreeTermsWriter.
This is a Lucene.NET EXPERIMENTAL API, use at your own risk
Inheritance
System.Object
BlockTreeTermsReader
Implements
System.Collections.Generic.IEnumerable<System.String>
System.Collections.IEnumerable
System.IDisposable
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Assembly: Lucene.Net.dll
Syntax
public class BlockTreeTermsReader : FieldsProducer, IEnumerable<string>, IEnumerable, IDisposable
Constructors
|
Improve this Doc
View Source
BlockTreeTermsReader(Directory, FieldInfos, SegmentInfo, PostingsReaderBase, IOContext, String, Int32)
Declaration
public BlockTreeTermsReader(Directory dir, FieldInfos fieldInfos, SegmentInfo info, PostingsReaderBase postingsReader, IOContext ioContext, string segmentSuffix, int indexDivisor)
Parameters
Properties
|
Improve this Doc
View Source
Count
Declaration
public override int Count { get; }
Property Value
Type |
Description |
System.Int32 |
|
Overrides
Methods
|
Improve this Doc
View Source
CheckIntegrity()
Declaration
public override void CheckIntegrity()
Overrides
|
Improve this Doc
View Source
Dispose(Boolean)
Disposes all resources used by this object.
Declaration
protected override void Dispose(bool disposing)
Parameters
Type |
Name |
Description |
System.Boolean |
disposing |
|
Overrides
|
Improve this Doc
View Source
GetEnumerator()
Declaration
public override IEnumerator<string> GetEnumerator()
Returns
Type |
Description |
System.Collections.Generic.IEnumerator<System.String> |
|
Overrides
|
Improve this Doc
View Source
GetTerms(String)
Declaration
public override Terms GetTerms(string field)
Parameters
Type |
Name |
Description |
System.String |
field |
|
Returns
Overrides
|
Improve this Doc
View Source
RamBytesUsed()
Declaration
public override long RamBytesUsed()
Returns
Type |
Description |
System.Int64 |
|
Overrides
|
Improve this Doc
View Source
Declaration
protected virtual int ReadHeader(IndexInput input)
Parameters
Returns
Type |
Description |
System.Int32 |
|
|
Improve this Doc
View Source
Declaration
protected virtual int ReadIndexHeader(IndexInput input)
Parameters
Returns
Type |
Description |
System.Int32 |
|
|
Improve this Doc
View Source
Seek input
to the directory offset.
Declaration
protected virtual void SeekDir(IndexInput input, long dirOffset)
Parameters
Type |
Name |
Description |
IndexInput |
input |
|
System.Int64 |
dirOffset |
|
Implements
System.Collections.Generic.IEnumerable<T>
System.Collections.IEnumerable
System.IDisposable
Extension Methods