Package org.apache.lucene.codecs.memory
Class DirectDocValuesFormat
- java.lang.Object
-
- org.apache.lucene.codecs.DocValuesFormat
-
- org.apache.lucene.codecs.memory.DirectDocValuesFormat
-
- All Implemented Interfaces:
NamedSPILoader.NamedSPI
public class DirectDocValuesFormat extends DocValuesFormat
In-memory docvalues format that does no (or very little) compression. Indexed values are stored on disk, but then at search time all values are loaded into memory as simple java arrays. For numeric values, it uses byte[], short[], int[], long[] as necessary to fit the range of the values. For binary values, there is an int (4 bytes) overhead per value.Limitations:
- For binary and sorted fields the total space required for all binary values cannot exceed about 2.1 GB (see #MAX_TOTAL_BYTES_LENGTH).
- For sorted set fields, the sum of the size of each
document's set of values cannot exceed about 2.1 B
values (see #MAX_SORTED_SET_ORDS). For example,
if every document has 10 values (10 instances of
SortedSetDocValuesField
) added, then no more than ~210 M documents can be added to one segment.
-
-
Field Summary
Fields Modifier and Type Field Description static int
MAX_SORTED_SET_ORDS
The sum of the number of values across all documents in a sorted set field cannot exceed this.static int
MAX_TOTAL_BYTES_LENGTH
The sum of all byte lengths for binary field, or for the unique values in sorted or sorted set fields, cannot exceed this.
-
Constructor Summary
Constructors Constructor Description DirectDocValuesFormat()
Sole constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DocValuesConsumer
fieldsConsumer(SegmentWriteState state)
DocValuesProducer
fieldsProducer(SegmentReadState state)
-
Methods inherited from class org.apache.lucene.codecs.DocValuesFormat
availableDocValuesFormats, forName, getName, reloadDocValuesFormats, toString
-
-
-
-
Field Detail
-
MAX_TOTAL_BYTES_LENGTH
public static final int MAX_TOTAL_BYTES_LENGTH
The sum of all byte lengths for binary field, or for the unique values in sorted or sorted set fields, cannot exceed this.
-
MAX_SORTED_SET_ORDS
public static final int MAX_SORTED_SET_ORDS
The sum of the number of values across all documents in a sorted set field cannot exceed this.
-
-
Method Detail
-
fieldsConsumer
public DocValuesConsumer fieldsConsumer(SegmentWriteState state) throws IOException
- Specified by:
fieldsConsumer
in classDocValuesFormat
- Throws:
IOException
-
fieldsProducer
public DocValuesProducer fieldsProducer(SegmentReadState state) throws IOException
- Specified by:
fieldsProducer
in classDocValuesFormat
- Throws:
IOException
-
-