Class CompletionPostingsFormat
- java.lang.Object
-
- org.apache.lucene.codecs.PostingsFormat
-
- org.apache.lucene.search.suggest.document.CompletionPostingsFormat
-
- All Implemented Interfaces:
NamedSPILoader.NamedSPI
- Direct Known Subclasses:
Completion50PostingsFormat
public abstract class CompletionPostingsFormat extends PostingsFormat
A
PostingsFormatwhich supports document suggestion based on indexedSuggestFields. Document suggestion is based on an weighted FST which map analyzed terms of aSuggestFieldto its surface form and document id.Files:
- .lkp: Completion Dictionary
- .cmp: Completion Index
Completion Dictionary
The .lkp file contains an FST for each suggest field
- CompletionDict (.lkp) --> Header, FSTNumSuggestFields, Footer
- Header -->
CodecHeader - FST -->
FST<Long, BytesRef> - Footer -->
CodecFooter
Notes:
- Header is a
CodecHeaderstoring the version information for the Completion implementation. - FST maps all analyzed forms to surface forms of a SuggestField
Completion Index
The .cmp file contains an index into the completion dictionary, so that it can be accessed randomly.
- CompletionIndex (.cmp) --> Header, NumSuggestFields, EntryNumSuggestFields, Footer
- Header -->
CodecHeader - NumSuggestFields -->
Uint32 - Entry --> FieldNumber, CompletionDictionaryOffset, MinWeight, MaxWeight, Type
- FieldNumber -->
Uint32 - CompletionDictionaryOffset -->
Uint64 - MinWeight -->
Uint64 - MaxWeight -->
Uint64 - Type -->
Byte - Footer -->
CodecFooter
Notes:
- Header is a
CodecHeaderstoring the version information for the Completion implementation. - NumSuggestFields is the number of suggest fields indexed
- FieldNumber is the fields number from
FieldInfos. (.fnm) - CompletionDictionaryOffset is the file offset of a field's FST in CompletionDictionary (.lkp)
- MinWeight and MaxWeight are the global minimum and maximum weight for the field
- Type indicates if the suggester has context or not
- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
-
Field Summary
-
Fields inherited from class org.apache.lucene.codecs.PostingsFormat
EMPTY
-
-
Constructor Summary
Constructors Constructor Description CompletionPostingsFormat()Used only by core Lucene at read-time via Service Provider instantiation
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract PostingsFormatdelegatePostingsFormat()Concrete implementation should specify the delegating postings formatFieldsConsumerfieldsConsumer(SegmentWriteState state)FieldsProducerfieldsProducer(SegmentReadState state)-
Methods inherited from class org.apache.lucene.codecs.PostingsFormat
availablePostingsFormats, forName, getName, reloadPostingsFormats, toString
-
-
-
-
Method Detail
-
delegatePostingsFormat
protected abstract PostingsFormat delegatePostingsFormat()
Concrete implementation should specify the delegating postings format
-
fieldsConsumer
public FieldsConsumer fieldsConsumer(SegmentWriteState state) throws IOException
- Specified by:
fieldsConsumerin classPostingsFormat- Throws:
IOException
-
fieldsProducer
public FieldsProducer fieldsProducer(SegmentReadState state) throws IOException
- Specified by:
fieldsProducerin classPostingsFormat- Throws:
IOException
-
-