| Constructor and Description |
|---|
ColumnComparisonFilter(List<DimensionSpec> dimensions) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object o) |
double |
estimateSelectivity(ColumnIndexSelector indexSelector)
Estimate selectivity of this filter.
|
BitmapColumnIndex |
getBitmapColumnIndex(ColumnIndexSelector selector)
Returns a
BitmapColumnIndex if this filter supports using a bitmap index for filtering for the given input
ColumnIndexSelector. |
Set<String> |
getRequiredColumns()
Set of columns used by a filter.
|
int |
hashCode() |
ValueMatcher |
makeMatcher(ColumnSelectorFactory factory)
Get a ValueMatcher that applies this filter to row values.
|
static ValueMatcher |
makeValueMatcher(List<Supplier<String[]>> valueGetters) |
static boolean |
overlap(String[] as,
String[] bs)
overlap returns true when: as and bs have one or more elements in common,
as and bs are both null, or as and bs are both empty.
|
boolean |
supportsSelectivityEstimation(ColumnSelector columnSelector,
ColumnIndexSelector indexSelector)
Indicates whether this filter supports selectivity estimation.
|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitcanVectorizeMatcher, makeVectorMatcher, rewriteRequiredColumns, supportsRequiredColumnRewritepublic ColumnComparisonFilter(List<DimensionSpec> dimensions)
@Nullable public BitmapColumnIndex getBitmapColumnIndex(ColumnIndexSelector selector)
FilterBitmapColumnIndex if this filter supports using a bitmap index for filtering for the given input
ColumnIndexSelector. The BitmapColumnIndex can be used to compute into a bitmap indicating rows
that match this filter result BitmapColumnIndex.computeBitmapResult(BitmapResultFactory), or examine
details about the index prior to computing it, via BitmapColumnIndex.getIndexCapabilities().getBitmapColumnIndex in interface Filterselector - Object used to create BitmapColumnIndexpublic ValueMatcher makeMatcher(ColumnSelectorFactory factory)
FiltermakeMatcher in interface Filterfactory - Object used to create ValueMatcherspublic static ValueMatcher makeValueMatcher(List<Supplier<String[]>> valueGetters)
public static boolean overlap(@Nullable String[] as, @Nullable String[] bs)
public boolean supportsSelectivityEstimation(ColumnSelector columnSelector, ColumnIndexSelector indexSelector)
FiltersupportsSelectivityEstimation in interface FiltercolumnSelector - Object to check the dimension has multi values.indexSelector - Object used to retrieve bitmap indexespublic Set<String> getRequiredColumns()
FiltergetRequiredColumns in interface Filterpublic double estimateSelectivity(ColumnIndexSelector indexSelector)
FilterAutoStrategy.
To avoid significant performance degradation for calculating the exact cost,
implementation of this method targets to achieve rapid selectivity estimation
with reasonable sacrifice of the accuracy.
As a result, the estimated selectivity might be different from the exact value.estimateSelectivity in interface FilterindexSelector - Object used to retrieve indexesFilter.getBitmapColumnIndex(ColumnIndexSelector)Copyright © 2011–2022 The Apache Software Foundation. All rights reserved.