Interface LexicographicalRangeIndexes
-
- All Known Implementing Classes:
IndexedUtf8LexicographicalRangeIndexes
public interface LexicographicalRangeIndexes
An optimized column valueBitmapColumnIndex
provider for columns which are stored in 'lexicographical' order, allowing short-circuit processing of string value ranges. This index does not match null values, union the results of this index withNullValueIndex
if null values should be considered part of the value range.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description BitmapColumnIndex
forRange(String startValue, boolean startStrict, String endValue, boolean endStrict)
Get aBitmapColumnIndex
corresponding to the values supplied in the specified range.BitmapColumnIndex
forRange(String startValue, boolean startStrict, String endValue, boolean endStrict, com.google.common.base.Predicate<String> matcher)
Get aBitmapColumnIndex
corresponding to the values supplied in the specified range whose dictionary ids also match some predicate, such as to match a prefix.
-
-
-
Method Detail
-
forRange
@Nullable BitmapColumnIndex forRange(@Nullable String startValue, boolean startStrict, @Nullable String endValue, boolean endStrict)
Get aBitmapColumnIndex
corresponding to the values supplied in the specified range. If supplied starting value is null, the range will begin at the first non-null value in the underlying value dictionary. If the end value is null, the range will extend to the last value in the underlying value dictionary.If this method returns null it indicates that there is no index available that matches the requested range and a
ValueMatcher
must be used instead.
-
forRange
@Nullable BitmapColumnIndex forRange(@Nullable String startValue, boolean startStrict, @Nullable String endValue, boolean endStrict, com.google.common.base.Predicate<String> matcher)
Get aBitmapColumnIndex
corresponding to the values supplied in the specified range whose dictionary ids also match some predicate, such as to match a prefix. If supplied starting value is null, the range will begin at the first non-null value in the underlying value dictionary that matches the predicate. If the end value is null, the range will extend to the last value in the underlying value dictionary that matches the predicate.If the provided matcher is always true, it's better to use the other
forRange(String, boolean, String, boolean)
method.If this method returns null it indicates that there is no index available that matches the requested range and a
ValueMatcher
must be used instead.
-
-