@Evolving public interface SupportsPushDownFilters extends ScanBuilder
ScanBuilder
. Data sources can implement this interface to
push down filters to the data source and reduce the size of the data to be read.Modifier and Type | Method and Description |
---|---|
Filter[] |
pushedFilters()
Returns the filters that are pushed to the data source via
pushFilters(Filter[]) . |
Filter[] |
pushFilters(Filter[] filters)
Pushes down filters, and returns filters that need to be evaluated after scanning.
|
build
Filter[] pushFilters(Filter[] filters)
Rows should be returned from the data source if and only if all of the filters match. That is, filters must be interpreted as ANDed together.
Filter[] pushedFilters()
pushFilters(Filter[])
.
There are 3 kinds of filters:
Both case 1 and 2 should be considered as pushed filters and should be returned by this method.
It's possible that there is no filters in the query and pushFilters(Filter[])
is never called, empty array should be returned for this case.