Class SortedSetDocValues

  • Direct Known Subclasses:
    MultiDocValues.MultiSortedSetDocValues, SingletonSortedSetDocValues

    public abstract class SortedSetDocValues
    extends java.lang.Object
    A 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.

    • Method Detail

      • nextOrd

        public abstract long nextOrd()
        Returns the next ordinal for the current document (previously set by setDocument(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 lookup
        result - 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)
        If key exists, returns its ordinal, else returns -insertionPoint-1, like Arrays.binarySearch.
        Parameters:
        key - Key to look up