C# 클래스 Lucene.Net.Codecs.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 Lucene.Net.Index.CheckIndex with the -verbose option to see summary statistics on the blocks in the dictionary. See BlockTreeTermsWriter. @lucene.experimental

상속: Lucene.Net.Codecs.FieldsProducer
파일 보기 프로젝트 열기: apache/lucenenet 1 사용 예제들

공개 메소드들

메소드 설명
BlockTreeTermsReader ( Directory dir, FieldInfos fieldInfos, SegmentInfo info, Lucene.Net.Codecs.PostingsReaderBase postingsReader, IOContext ioContext, string segmentSuffix, int indexDivisor ) : System

Sole constructor.

CheckIntegrity ( ) : void
Dispose ( ) : void
GetEnumerator ( ) : IEnumerator
RamBytesUsed ( ) : long
Terms ( string field ) : Terms

보호된 메소드들

메소드 설명
ReadHeader ( IndexInput input ) : int

Reads terms file header.

ReadIndexHeader ( IndexInput input ) : int

Reads index file header.

SeekDir ( IndexInput input, long dirOffset ) : void

Seek {@code input} to the directory offset.

비공개 메소드들

메소드 설명
BrToString ( BytesRef b ) : string
InitializeInstanceFields ( ) : void

메소드 상세

BlockTreeTermsReader() 공개 메소드

Sole constructor.
public BlockTreeTermsReader ( Directory dir, FieldInfos fieldInfos, SegmentInfo info, Lucene.Net.Codecs.PostingsReaderBase postingsReader, IOContext ioContext, string segmentSuffix, int indexDivisor ) : System
dir Directory
fieldInfos FieldInfos
info SegmentInfo
postingsReader Lucene.Net.Codecs.PostingsReaderBase
ioContext IOContext
segmentSuffix string
indexDivisor int
리턴 System

CheckIntegrity() 공개 메소드

public CheckIntegrity ( ) : void
리턴 void

Dispose() 공개 메소드

public Dispose ( ) : void
리턴 void

GetEnumerator() 공개 메소드

public GetEnumerator ( ) : IEnumerator
리턴 IEnumerator

RamBytesUsed() 공개 메소드

public RamBytesUsed ( ) : long
리턴 long

ReadHeader() 보호된 메소드

Reads terms file header.
protected ReadHeader ( IndexInput input ) : int
input IndexInput
리턴 int

ReadIndexHeader() 보호된 메소드

Reads index file header.
protected ReadIndexHeader ( IndexInput input ) : int
input IndexInput
리턴 int

SeekDir() 보호된 메소드

Seek {@code input} to the directory offset.
protected SeekDir ( IndexInput input, long dirOffset ) : void
input IndexInput
dirOffset long
리턴 void

Terms() 공개 메소드

public Terms ( string field ) : Terms
field string
리턴 Terms