Class AdaptivePartitioning
java.lang.Object
io.trino.sql.planner.optimizations.AdaptivePartitioning
- All Implemented Interfaces:
AdaptivePlanOptimizer,PlanOptimizer
This optimizer is responsible for changing the partition count of hash partitioned fragments
at runtime. This uses the runtime output stats from FTE to determine estimated memory consumption
and changes the partition count if the estimated memory consumption is higher than the
runtimeAdaptivePartitioningMaxTaskSizeInBytes * current partitionCount.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.trino.sql.planner.optimizations.AdaptivePlanOptimizer
AdaptivePlanOptimizer.ResultNested classes/interfaces inherited from interface io.trino.sql.planner.optimizations.PlanOptimizer
PlanOptimizer.Context -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic booleanconsumesHashPartitionedInput(PlanFragment fragment) optimizeAndMarkPlanChanges(PlanNode plan, PlanOptimizer.Context context) Optimize the plan and return the changes made to the plan.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.trino.sql.planner.optimizations.AdaptivePlanOptimizer
optimize
-
Constructor Details
-
AdaptivePartitioning
public AdaptivePartitioning()
-
-
Method Details
-
optimizeAndMarkPlanChanges
public AdaptivePlanOptimizer.Result optimizeAndMarkPlanChanges(PlanNode plan, PlanOptimizer.Context context) Description copied from interface:AdaptivePlanOptimizerOptimize the plan and return the changes made to the plan.- Specified by:
optimizeAndMarkPlanChangesin interfaceAdaptivePlanOptimizer
-
consumesHashPartitionedInput
-