Package org.apache.lucene.index
Class SortedSetDocValues
- java.lang.Object
-
- org.apache.lucene.index.SortedSetDocValues
-
- Direct Known Subclasses:
MultiDocValues.MultiSortedSetDocValues,SingletonSortedSetDocValues
public abstract class SortedSetDocValues extends java.lang.ObjectA per-document set of presorted byte[] values.Per-Document values in a SortedDocValues are deduplicated, dereferenced, and sorted into a dictionary of unique values. A pointer to the dictionary value (ordinal) can be retrieved for each document. Ordinals are dense and in increasing sorted order.
-
-
Field Summary
Fields Modifier and Type Field Description static SortedSetDocValuesEMPTYAn empty SortedDocValues which returnsNO_MORE_ORDSfor every documentstatic longNO_MORE_ORDSWhen returned bynextOrd()it means there are no more ordinals for the document.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract longgetValueCount()Returns the number of unique values.abstract voidlookupOrd(long ord, BytesRef result)Retrieves the value for the specified ordinal.longlookupTerm(BytesRef key)Ifkeyexists, returns its ordinal, else returns-insertionPoint-1, likeArrays.binarySearch.abstract longnextOrd()Returns the next ordinal for the current document (previously set bysetDocument(int).abstract voidsetDocument(int docID)Sets iteration to the specified docIDTermsEnumtermsEnum()Returns aTermsEnumover the values.
-
-
-
Field Detail
-
NO_MORE_ORDS
public static final long NO_MORE_ORDS
When returned bynextOrd()it means there are no more ordinals for the document.- See Also:
- Constant Field Values
-
EMPTY
public static final SortedSetDocValues EMPTY
An empty SortedDocValues which returnsNO_MORE_ORDSfor every document
-
-
Method Detail
-
nextOrd
public abstract long nextOrd()
Returns the next ordinal for the current document (previously set bysetDocument(int).- Returns:
- next ordinal for the document, or
NO_MORE_ORDS. ordinals are dense, start at 0, then increment by 1 for the next value in sorted order.
-
setDocument
public abstract void setDocument(int docID)
Sets iteration to the specified docID- Parameters:
docID- document ID
-
lookupOrd
public abstract void lookupOrd(long ord, BytesRef result)Retrieves the value for the specified ordinal.- Parameters:
ord- ordinal to lookupresult- will be populated with the ordinal's value- See Also:
nextOrd()
-
getValueCount
public abstract long getValueCount()
Returns the number of unique values.- Returns:
- number of unique values in this SortedDocValues. This is also equivalent to one plus the maximum ordinal.
-
lookupTerm
public long lookupTerm(BytesRef key)
Ifkeyexists, returns its ordinal, else returns-insertionPoint-1, likeArrays.binarySearch.- Parameters:
key- Key to look up
-
termsEnum
public TermsEnum termsEnum()
Returns aTermsEnumover the values. The enum supportsTermsEnum.ord()andTermsEnum.seekExact(long).
-
-