Class SortedSetDocValuesReaderState
- java.lang.Object
-
- org.apache.lucene.facet.sortedset.SortedSetDocValuesReaderState
-
- All Implemented Interfaces:
Accountable
- Direct Known Subclasses:
DefaultSortedSetDocValuesReaderState
public abstract class SortedSetDocValuesReaderState extends Object implements Accountable
Wraps aIndexReader
and resolves ords using existingSortedSetDocValues
APIs without a separate taxonomy index. This only supports flat facets (dimension + label), and it makes faceting a bit slower, adds some cost at reopen time, but avoids managing the separate taxonomy index. It also requires less RAM than the taxonomy index, as it manages the flat (2-level) hierarchy more efficiently. In addition, the tie-break during faceting is now meaningful (in label sorted order).NOTE: creating an instance of this class is somewhat costly, as it computes per-segment ordinal maps, so you should create it once and re-use that one instance for a given
IndexReader
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SortedSetDocValuesReaderState.DimTree
Holds children and sibling information for a single dimension.static class
SortedSetDocValuesReaderState.OrdRange
Holds start/end range of ords, which maps to one dimension.
-
Field Summary
Fields Modifier and Type Field Description static int
INVALID_ORDINAL
Invalid ordinal const-
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
SortedSetDocValuesReaderState()
Sole constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract Iterable<String>
getDims()
Returns a list of all dimensionsabstract SortedSetDocValuesReaderState.DimTree
getDimTree(String dim)
Returns mapping from prefix toSortedSetDocValuesReaderState.DimTree
abstract SortedSetDocValues
getDocValues()
Return top-level doc values.abstract FacetsConfig
getFacetsConfig()
Returns the associated facet config.abstract String
getField()
Indexed field we are reading.abstract SortedSetDocValuesReaderState.OrdRange
getOrdRange(String dim)
Returns theSortedSetDocValuesReaderState.OrdRange
for this dimension.abstract Map<String,SortedSetDocValuesReaderState.OrdRange>
getPrefixToOrdRange()
Returns mapping from prefix toSortedSetDocValuesReaderState.OrdRange
.abstract IndexReader
getReader()
Returns top-level index reader.abstract int
getSize()
Number of unique labels.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.util.Accountable
getChildResources, ramBytesUsed
-
-
-
-
Field Detail
-
INVALID_ORDINAL
public static final int INVALID_ORDINAL
Invalid ordinal const- See Also:
- Constant Field Values
-
-
Method Detail
-
getDocValues
public abstract SortedSetDocValues getDocValues() throws IOException
Return top-level doc values.- Throws:
IOException
-
getField
public abstract String getField()
Indexed field we are reading.
-
getReader
public abstract IndexReader getReader()
Returns top-level index reader.
-
getSize
public abstract int getSize()
Number of unique labels.
-
getFacetsConfig
public abstract FacetsConfig getFacetsConfig()
Returns the associated facet config.
-
getOrdRange
public abstract SortedSetDocValuesReaderState.OrdRange getOrdRange(String dim)
Returns theSortedSetDocValuesReaderState.OrdRange
for this dimension.
-
getPrefixToOrdRange
public abstract Map<String,SortedSetDocValuesReaderState.OrdRange> getPrefixToOrdRange()
Returns mapping from prefix toSortedSetDocValuesReaderState.OrdRange
.
-
getDimTree
public abstract SortedSetDocValuesReaderState.DimTree getDimTree(String dim)
Returns mapping from prefix toSortedSetDocValuesReaderState.DimTree
-
-