Class SortedDocValues

java.lang.Object
org.apache.lucene.index.BinaryDocValues
org.apache.lucene.index.SortedDocValues
Direct Known Subclasses:
MultiDocValues.MultiSortedDocValues

public abstract class SortedDocValues extends BinaryDocValues
A per-document byte[] with presorted 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 Details

  • Method Details

    • getOrd

      public abstract int getOrd(int docID)
      Returns the ordinal for the specified docID.
      Parameters:
      docID - document ID to lookup
      Returns:
      ordinal for the document: this is dense, starts at 0, then increments by 1 for the next value in sorted order. Note that missing values are indicated by -1.
    • lookupOrd

      public abstract void lookupOrd(int ord, BytesRef result)
      Retrieves the value for the specified ordinal.
      Parameters:
      ord - ordinal to lookup (must be >= 0 and invalid input: '&lt' getValueCount())
      result - will be populated with the ordinal's value
      See Also:
    • getValueCount

      public abstract int 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.
    • get

      public void get(int docID, BytesRef result)
      Description copied from class: BinaryDocValues
      Lookup the value for document.
      Specified by:
      get in class BinaryDocValues
    • lookupTerm

      public int lookupTerm(BytesRef key)
      If key exists, returns its ordinal, else returns -insertionPoint-1, like Arrays.binarySearch.
      Parameters:
      key - Key to look up
    • termsEnum

      public TermsEnum termsEnum()
      Returns a TermsEnum over the values. The enum supports TermsEnum.ord() and TermsEnum.seekExact(long).