Class BeamAggregateProjectMergeRule
- java.lang.Object
-
- org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelOptRule
-
- org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelRule<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.rules.AggregateProjectMergeRule.Config>
-
- org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.rules.AggregateProjectMergeRule
-
- org.apache.beam.sdk.extensions.sql.impl.rule.BeamAggregateProjectMergeRule
-
- All Implemented Interfaces:
org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.rules.TransformationRule
public class BeamAggregateProjectMergeRule extends org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.rules.AggregateProjectMergeRuleThis rule is essentially a wrapper around Calcite'sAggregateProjectMergeRule. In the case when an underlying IO supports project push-down it is more efficient to not mergeProjectwith anAggregate, leaving it for theBeamIOPUshDownRule.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.rules.AggregateProjectMergeRule
org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.rules.AggregateProjectMergeRule.Config
-
Nested classes/interfaces inherited from class org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelRule
org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelRule.Done, org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelRule.MatchHandler<R extends org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelOptRule>, org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelRule.OperandBuilder, org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelRule.OperandDetailBuilder<R extends org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.RelNode>, org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelRule.OperandTransform
-
-
Field Summary
Fields Modifier and Type Field Description static org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.rules.AggregateProjectMergeRuleINSTANCE
-
Constructor Summary
Constructors Constructor Description BeamAggregateProjectMergeRule(java.lang.Class<? extends org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.core.Aggregate> aggregateClass, java.lang.Class<? extends org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.core.Project> projectClass, org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.tools.RelBuilderFactory relBuilderFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidonMatch(org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelOptRuleCall call)-
Methods inherited from class org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.rules.AggregateProjectMergeRule
apply
-
Methods inherited from class org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.plan.RelOptRule
any, convert, convert, convert, convert, convertList, convertOperand, convertOperand, equals, equals, getOperand, getOperands, getOutConvention, getOutTrait, hashCode, matches, none, operand, operand, operand, operand, operand, operandJ, operandJ, some, toString, unordered
-
-
-
-
Constructor Detail
-
BeamAggregateProjectMergeRule
public BeamAggregateProjectMergeRule(java.lang.Class<? extends org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.core.Aggregate> aggregateClass, java.lang.Class<? extends org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rel.core.Project> projectClass, org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.tools.RelBuilderFactory relBuilderFactory)
-
-