Class MultiDocValues.OrdinalMap

  • Enclosing class:
    MultiDocValues

    public static class MultiDocValues.OrdinalMap
    extends Object
    maps per-segment ordinals to/from global ordinal space
    • Constructor Detail

      • OrdinalMap

        public OrdinalMap​(Object owner,
                          TermsEnum[] subs)
                   throws IOException
        Creates an ordinal map that allows mapping ords to/from a merged space from subs.
        Parameters:
        owner - a cache key
        subs - TermsEnums that support TermsEnum.ord(). They need not be dense (e.g. can be FilteredTermsEnums}.
        Throws:
        IOException - if an I/O error occurred.
    • Method Detail

      • getGlobalOrd

        public long getGlobalOrd​(int segmentIndex,
                                 long segmentOrd)
        Given a segment number and segment ordinal, returns the corresponding global ordinal.
      • getFirstSegmentOrd

        public long getFirstSegmentOrd​(long globalOrd)
        Given global ordinal, returns the ordinal of the first segment which contains this ordinal (the corresponding to the segment return getFirstSegmentNumber(long)).
      • getFirstSegmentNumber

        public int getFirstSegmentNumber​(long globalOrd)
        Given a global ordinal, returns the index of the first segment that contains this term.
      • getValueCount

        public long getValueCount()
        Returns the total number of unique terms in global ord space.
      • ramBytesUsed

        public long ramBytesUsed()
        Returns total byte size used by this ordinal map.