Package org.apache.lucene.codecs.uniformsplit.sharedterms

# Class STUniformSplitPostingsFormat

java.lang.Object
org.apache.lucene.codecs.PostingsFormat
org.apache.lucene.codecs.uniformsplit.UniformSplitPostingsFormat
org.apache.lucene.codecs.uniformsplit.sharedterms.STUniformSplitPostingsFormat

All Implemented Interfaces:
  `NamedSPILoader.NamedSPI`

public class STUniformSplitPostingsFormat extends UniformSplitPostingsFormat
`PostingsFormat` based on the Uniform Split technique and supporting Shared Terms.

Shared Terms means the terms of all fields are stored in the same block file, with multiple fields associated to one term (one block line). In the same way, the dictionary trie is also shared between all fields. This highly reduces the memory required by the field dictionary compared to having one separate dictionary per field.

WARNING: This API is experimental and might change in incompatible ways in the next release.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`NAME`
`static final String`
`TERMS_BLOCKS_EXTENSION`
Extension of the file containing the terms blocks for each field and the fields metadata.
`static final String`
`TERMS_DICTIONARY_EXTENSION`
Extension of the file containing the terms dictionary (the FST "trie").
`static final int`
`VERSION_CURRENT`

### Fields inherited from class org.apache.lucene.codecs.uniformsplit.UniformSplitPostingsFormat

`blockDecoder, blockEncoder, deltaNumLines, dictionaryOnHeap, targetNumBlockLines, VERSION_ENCODABLE_FIELDS_METADATA, VERSION_START`

### Fields inherited from class org.apache.lucene.codecs.PostingsFormat

`EMPTY`

## Constructor Summary

Constructors
Modifier
Constructor
Description
``
`STUniformSplitPostingsFormat()`
Creates a `STUniformSplitPostingsFormat` with default settings.
``
`STUniformSplitPostingsFormat(int targetNumBlockLines, int deltaNumLines, BlockEncoder blockEncoder, BlockDecoder blockDecoder, boolean dictionaryOnHeap)`
`protected`
`STUniformSplitPostingsFormat(String name, int targetNumBlockLines, int deltaNumLines, BlockEncoder blockEncoder, BlockDecoder blockDecoder, boolean dictionaryOnHeap)`

## Method Summary

Modifier and Type
Method
Description
`protected FieldsProducer`
`createUniformSplitTermsReader(PostingsReaderBase postingsReader, SegmentReadState state, BlockDecoder blockDecoder)`
`protected FieldsConsumer`
`createUniformSplitTermsWriter(PostingsWriterBase postingsWriter, SegmentWriteState state, int targetNumBlockLines, int deltaNumLines, BlockEncoder blockEncoder)`

### Methods inherited from class org.apache.lucene.codecs.uniformsplit.UniformSplitPostingsFormat

`fieldsConsumer, fieldsProducer`

### Methods inherited from class org.apache.lucene.codecs.PostingsFormat

`availablePostingsFormats, forName, getName, reloadPostingsFormats, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## 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:
  - Constant Field Values

### 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:
  - Constant Field Values

### VERSION_CURRENT

public static final int VERSION_CURRENT

See Also:
  - Constant Field Values

### NAME

public static final String NAME

See Also:
  - Constant Field Values

## Constructor Details

### STUniformSplitPostingsFormat

public STUniformSplitPostingsFormat()
Creates a `STUniformSplitPostingsFormat` with default settings.

### STUniformSplitPostingsFormat

public STUniformSplitPostingsFormat(int targetNumBlockLines, int deltaNumLines, BlockEncoder blockEncoder, BlockDecoder blockDecoder, boolean dictionaryOnHeap)

See Also:
  - `UniformSplitPostingsFormat(int, int, BlockEncoder, BlockDecoder, boolean)`

### STUniformSplitPostingsFormat

protected STUniformSplitPostingsFormat(String name, int targetNumBlockLines, int deltaNumLines, BlockEncoder blockEncoder, BlockDecoder blockDecoder, boolean dictionaryOnHeap)

## Method Details

### createUniformSplitTermsWriter

protected FieldsConsumer createUniformSplitTermsWriter(PostingsWriterBase postingsWriter, SegmentWriteState state, int targetNumBlockLines, int deltaNumLines, BlockEncoder blockEncoder) throws IOException

Overrides:
  `createUniformSplitTermsWriter` in class `UniformSplitPostingsFormat`
Throws:
  `IOException`

### createUniformSplitTermsReader

protected FieldsProducer createUniformSplitTermsReader(PostingsReaderBase postingsReader, SegmentReadState state, BlockDecoder blockDecoder) throws IOException

Overrides:
  `createUniformSplitTermsReader` in class `UniformSplitPostingsFormat`
Throws:
  `IOException`