Class DictionaryRangeScanningBitmapIndex

    • Constructor Detail

      • DictionaryRangeScanningBitmapIndex

        public DictionaryRangeScanningBitmapIndex​(double sizeScale,
                                                  int rangeSize)
    • Method Detail

      • computeBitmapResult

        @Nullable
        public final <T> T computeBitmapResult​(BitmapResultFactory<T> bitmapResultFactory,
                                               int applyRowCount,
                                               int totalRowCount,
                                               boolean includeUnknown)
        Description copied from interface: BitmapColumnIndex
        Compute a bitmap result wrapped with the BitmapResultFactory representing the rows matched by this index, or null if the index cannot (or should not) be computed.
        Parameters:
        bitmapResultFactory - helper to format the ImmutableBitmap in a form ready for consumption by callers
        applyRowCount - upper bound on number of rows this filter would be applied to, after removing rows short-circuited by prior bundle operations. For example, given "x AND y", if "x" is resolved using an index, then "y" will receive the number of rows that matched the filter "x". As another example, given "x OR y", if "x" is resolved using an index, then "y" will receive the number of rows that did *not* match the filter "x".
        totalRowCount - total number of rows to be scanned if no indexes are used
        includeUnknown - mapping for Druid native two state logic system into SQL three-state logic system. If set to true, bitmaps returned by this method should include true bits for any rows where the matching result is 'unknown', such as from the input being null valued. See NullHandling.useThreeValueLogic().
        Returns:
        bitmap result representing rows matched by this index