Package org.apache.lucene.facet.taxonomy
Class CachedOrdinalsReader
java.lang.Object
org.apache.lucene.facet.taxonomy.OrdinalsReader
org.apache.lucene.facet.taxonomy.CachedOrdinalsReader
- All Implemented Interfaces:
Accountable
Deprecated.
Custom binary encodings for taxonomy ordinals are no longer supported starting with
Lucene 9
A per-segment cache of documents' facet ordinals. Every
CachedOrdinalsReader.CachedOrds
holds the ordinals in
a raw int[]
, and therefore consumes as much RAM as the total number of ordinals found in
the segment, but saves the CPU cost of decoding ordinals during facet counting.
NOTE: every CachedOrdinalsReader.CachedOrds
is limited to 2.1B total ordinals. If that is a
limitation for you then consider limiting the segment size to fewer documents, or use an
alternative cache which pages through the category ordinals.
NOTE: when using this cache, it is advised to use a DocValuesFormat
that does
not cache the data in memory, at least for the category lists fields, or otherwise you'll be
doing double-caching.
NOTE: create one instance of this and re-use it for all facet implementations (the cache is per-instance, not static).
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
Deprecated.Holds the cached ordinals in two parallelint[]
arrays.Nested classes/interfaces inherited from class org.apache.lucene.facet.taxonomy.OrdinalsReader
OrdinalsReader.OrdinalsSegmentReader
-
Field Summary
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionDeprecated.Deprecated.Returns the indexed field name thisOrdinalsReader
is reading from.getReader
(LeafReaderContext context) Deprecated.Set current atomic reader.long
Deprecated.
-
Constructor Details
-
CachedOrdinalsReader
Deprecated.Sole constructor.
-
-
Method Details
-
getIndexFieldName
Deprecated.Description copied from class:OrdinalsReader
Returns the indexed field name thisOrdinalsReader
is reading from.- Specified by:
getIndexFieldName
in classOrdinalsReader
-
getReader
Deprecated.Description copied from class:OrdinalsReader
Set current atomic reader.- Specified by:
getReader
in classOrdinalsReader
- Throws:
IOException
-
ramBytesUsed
public long ramBytesUsed()Deprecated.- Specified by:
ramBytesUsed
in interfaceAccountable
-
getChildResources
Deprecated.- Specified by:
getChildResources
in interfaceAccountable
-