| Constructor and Description |
|---|
ExpressionFilter(com.google.common.base.Supplier<Expr> expr,
FilterTuning filterTuning) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canVectorizeMatcher(ColumnInspector inspector)
Returns true if this filter can produce a vectorized matcher from its "makeVectorMatcher" method.
|
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.
|
VectorValueMatcher |
makeVectorMatcher(VectorColumnSelectorFactory factory)
Get a VectorValueMatcher that applies this filter to row vectors.
|
boolean |
supportsRequiredColumnRewrite()
Returns true is this filter is able to return a copy of this filter that is identical to this filter except that it
operates on different columns, based on a renaming map.
|
boolean |
supportsSelectivityEstimation(ColumnSelector columnSelector,
ColumnIndexSelector indexSelector)
Indicates whether this filter supports selectivity estimation.
|
String |
toString() |
clone, finalize, getClass, notify, notifyAll, wait, wait, waitrewriteRequiredColumnspublic ExpressionFilter(com.google.common.base.Supplier<Expr> expr, FilterTuning filterTuning)
public boolean canVectorizeMatcher(ColumnInspector inspector)
FiltercanVectorizeMatcher in interface Filterinspector - Supplies type information for the selectors this filter will match againstpublic VectorValueMatcher makeVectorMatcher(VectorColumnSelectorFactory factory)
FiltermakeVectorMatcher in interface Filterfactory - Object used to create ValueMatcherspublic ValueMatcher makeMatcher(ColumnSelectorFactory factory)
FiltermakeMatcher in interface Filterfactory - Object used to create ValueMatchers@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 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 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)public Set<String> getRequiredColumns()
FiltergetRequiredColumns in interface Filterpublic boolean supportsRequiredColumnRewrite()
FiltersupportsRequiredColumnRewrite in interface FilterCopyright © 2011–2022 The Apache Software Foundation. All rights reserved.