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, Completion84PostingsFormat, Completion90PostingsFormat

public abstract class CompletionPostingsFormat extends PostingsFormat
A PostingsFormat which supports document suggestion based on indexed SuggestFields. Document suggestion is based on an weighted FST which map analyzed terms of a SuggestField to its surface form and document id.

Files:

Completion Dictionary

The .lkp file contains an FST for each suggest field

Notes:

  • Header is a CodecHeader storing 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 CodecHeader storing 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.