Class BatchExecHashAggregate

java.lang.Object
org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase<org.apache.flink.table.data.RowData>
org.apache.flink.table.planner.plan.nodes.exec.batch.BatchExecHashAggregate
All Implemented Interfaces:
BatchExecNode<org.apache.flink.table.data.RowData>, ExecNode<org.apache.flink.table.data.RowData>, ExecNodeTranslator<org.apache.flink.table.data.RowData>, FusionCodegenExecNode, SingleTransformationTranslator<org.apache.flink.table.data.RowData>

@ExecNodeMetadata(name="batch-exec-hash-aggregate", version=1, producedTransformations="hash-aggregate", consumedOptions={"table.exec.resource.hash-agg.memory","table.exec.sort.max-num-file-handles","table.exec.spill-compression.enabled","table.exec.spill-compression.block-size"}, minPlanVersion=v2_0, minStateVersion=v2_0) public class BatchExecHashAggregate extends ExecNodeBase<org.apache.flink.table.data.RowData> implements BatchExecNode<org.apache.flink.table.data.RowData>, SingleTransformationTranslator<org.apache.flink.table.data.RowData>
Batch ExecNode for hash-based aggregate operator.
  • Field Details

  • Constructor Details

    • BatchExecHashAggregate

      public BatchExecHashAggregate(org.apache.flink.configuration.ReadableConfig tableConfig, int[] grouping, int[] auxGrouping, org.apache.calcite.rel.core.AggregateCall[] aggCalls, org.apache.flink.table.types.logical.RowType aggInputRowType, boolean isMerge, boolean isFinal, boolean supportAdaptiveLocalHashAgg, InputProperty inputProperty, org.apache.flink.table.types.logical.RowType outputType, String description)
    • BatchExecHashAggregate

      public BatchExecHashAggregate(int id, ExecNodeContext context, org.apache.flink.configuration.ReadableConfig persistedConfig, int[] grouping, int[] auxGrouping, org.apache.calcite.rel.core.AggregateCall[] aggCalls, org.apache.flink.table.types.logical.RowType aggInputRowType, boolean isMerge, boolean isFinal, boolean supportAdaptiveLocalHashAgg, List<InputProperty> inputProperties, org.apache.flink.table.types.logical.RowType outputType, String description)
  • Method Details

    • translateToPlanInternal

      protected org.apache.flink.api.dag.Transformation<org.apache.flink.table.data.RowData> translateToPlanInternal(PlannerBase planner, ExecNodeConfig config)
      Description copied from class: ExecNodeBase
      Internal method, translates this node into a Flink operator.
      Specified by:
      translateToPlanInternal in class ExecNodeBase<org.apache.flink.table.data.RowData>
      Parameters:
      planner - The planner.
      config - per-ExecNode configuration that contains the merged configuration from various layers which all the nodes implementing this method should use, instead of retrieving configuration from the planner. For more details check ExecNodeConfig.
    • supportFusionCodegen

      public boolean supportFusionCodegen()
      Description copied from interface: FusionCodegenExecNode
      Whether this ExecNode supports OFCG or not.
      Specified by:
      supportFusionCodegen in interface FusionCodegenExecNode
      Overrides:
      supportFusionCodegen in class ExecNodeBase<org.apache.flink.table.data.RowData>
    • translateToFusionCodegenSpecInternal

      protected OpFusionCodegenSpecGenerator translateToFusionCodegenSpecInternal(PlannerBase planner, ExecNodeConfig config, CodeGeneratorContext parentCtx)
      Description copied from class: ExecNodeBase
      Internal method, translates this node into a operator codegen spec generator.
      Overrides:
      translateToFusionCodegenSpecInternal in class ExecNodeBase<org.apache.flink.table.data.RowData>
      Parameters:
      planner - The planner.
      config - per-ExecNode configuration that contains the merged configuration from various layers which all the nodes implementing this method should use, instead of retrieving configuration from the planner. For more details check ExecNodeConfig.