Class ProjectionMatchBuilder
java.lang.Object
org.apache.druid.segment.projections.ProjectionMatchBuilder
State holder used by
Projections.matchAggregateProjection(org.apache.druid.segment.projections.AggregateProjectionSchema, org.apache.druid.segment.CursorBuildSpec, org.joda.time.Interval, org.apache.druid.segment.projections.Projections.PhysicalColumnChecker) for building a ProjectionMatch. Tracks
which all kinds of stuff to map a projection to the contents of a query CursorBuildSpec, accumulating
details about how to transform into a new CursorBuildSpec that will run against the projection.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddPreAggregatedAggregator(AggregatorFactory aggregator) Add a queryAggregatorFactory.substituteCombiningFactory(AggregatorFactory)which can combine the inputs of a selector created by a projectionAggregatorFactoryaddReferencedPhysicalColumn(String column) Add a projection physical column, which will later be added toProjectionMatch.getCursorBuildSpec()if the projection matchesaddReferenceedVirtualColumn(VirtualColumn virtualColumn) Add a query virtual column that can use projection physical columns as inputs to the match builder, which will later be added toProjectionMatch.getCursorBuildSpec()if the projection matchesbuild(CursorBuildSpec queryCursorBuildSpec) getRemapValue(String queryColumn) remapColumn(String queryColumn, String projectionColumn) Map a query column name to a projection column namerewriteFilter(Filter rewriteFilter)
-
Constructor Details
-
ProjectionMatchBuilder
public ProjectionMatchBuilder()
-
-
Method Details
-
remapColumn
Map a query column name to a projection column name -
getRemapValue
-
addReferencedPhysicalColumn
Add a projection physical column, which will later be added toProjectionMatch.getCursorBuildSpec()if the projection matches -
addReferenceedVirtualColumn
Add a query virtual column that can use projection physical columns as inputs to the match builder, which will later be added toProjectionMatch.getCursorBuildSpec()if the projection matches -
addPreAggregatedAggregator
Add a queryAggregatorFactory.substituteCombiningFactory(AggregatorFactory)which can combine the inputs of a selector created by a projectionAggregatorFactory -
rewriteFilter
-
getRewriteFilter
-
getRemapColumns
-
build
-