Class UniformSplitPostingsFormat

java.lang.Object
org.apache.lucene.codecs.PostingsFormat
org.apache.lucene.codecs.uniformsplit.UniformSplitPostingsFormat
All Implemented Interfaces:
NamedSPILoader.NamedSPI
Direct Known Subclasses:
STUniformSplitPostingsFormat

public class UniformSplitPostingsFormat extends PostingsFormat
PostingsFormat based on the Uniform Split technique.
See Also:
  • Field Details

    • TERMS_DICTIONARY_EXTENSION

      public static final String TERMS_DICTIONARY_EXTENSION
      Extension of the file containing the terms dictionary (the FST "trie").
      See Also:
    • TERMS_BLOCKS_EXTENSION

      public static final String TERMS_BLOCKS_EXTENSION
      Extension of the file containing the terms blocks for each field and the fields metadata.
      See Also:
    • VERSION_START

      public static final int VERSION_START
      See Also:
    • VERSION_ENCODABLE_FIELDS_METADATA

      public static final int VERSION_ENCODABLE_FIELDS_METADATA
      See Also:
    • VERSION_CURRENT

      public static final int VERSION_CURRENT
      See Also:
    • NAME

      public static final String NAME
      See Also:
    • targetNumBlockLines

      protected final int targetNumBlockLines
    • deltaNumLines

      protected final int deltaNumLines
    • blockEncoder

      protected final BlockEncoder blockEncoder
    • blockDecoder

      protected final BlockDecoder blockDecoder
    • dictionaryOnHeap

      protected final boolean dictionaryOnHeap
  • Constructor Details

    • UniformSplitPostingsFormat

      public UniformSplitPostingsFormat()
      Creates a UniformSplitPostingsFormat with default settings.
    • UniformSplitPostingsFormat

      public UniformSplitPostingsFormat(int targetNumBlockLines, int deltaNumLines, BlockEncoder blockEncoder, BlockDecoder blockDecoder, boolean dictionaryOnHeap)
      Parameters:
      targetNumBlockLines - Target number of lines per block. Must be strictly greater than 0. The parameters can be pre-validated with UniformSplitTermsWriter.validateSettings(int, int). There is one term per block line, with its corresponding details (TermState).
      deltaNumLines - Maximum allowed delta variation of the number of lines per block. Must be greater than or equal to 0 and strictly less than targetNumBlockLines. The block size will be targetNumBlockLines+-deltaNumLines. The block size must always be less than or equal to UniformSplitTermsWriter.MAX_NUM_BLOCK_LINES.
      blockEncoder - Optional block encoder, may be null if none. If present, it is used to encode all terms blocks, as well as the FST dictionary and the fields metadata.
      blockDecoder - Optional block decoder, may be null if none. If present, it is used to decode all terms blocks, as well as the FST dictionary and the fields metadata.
      dictionaryOnHeap - Whether to force loading the terms dictionary on-heap. By default it is kept off-heap without impact on performance. If block encoding/decoding is used, then the dictionary is always loaded on-heap whatever this parameter value is.
    • UniformSplitPostingsFormat

      protected UniformSplitPostingsFormat(String name, int targetNumBlockLines, int deltaNumLines, BlockEncoder blockEncoder, BlockDecoder blockDecoder, boolean dictionaryOnHeap)
      See Also:
  • Method Details