Class PhysicalOptimizerBase
java.lang.Object
se.liu.ida.hefquin.engine.queryproc.impl.poptimizer.PhysicalOptimizerBase
- All Implemented Interfaces:
PhysicalOptimizer
- Direct Known Subclasses:
PhysicalOptimizerWithoutOptimization,SimpleJoinOrderingQueryOptimizer
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract booleanReturn true if this optimizer expects that multiway joins are carried over from the given logical plan into the initial physical plan.optimize(LogicalPlan lp, QueryProcContext ctxt) protected abstract Pair<PhysicalPlan, PhysicalOptimizationStats> optimize(PhysicalPlan initialPhysicalPlan, QueryProcContext ctxt) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface se.liu.ida.hefquin.engine.queryproc.PhysicalOptimizer
assumesLogicalMultiwayJoins
-
Constructor Details
-
PhysicalOptimizerBase
public PhysicalOptimizerBase()
-
-
Method Details
-
optimize
public final Pair<PhysicalPlan,PhysicalOptimizationStats> optimize(LogicalPlan lp, QueryProcContext ctxt) throws PhysicalOptimizationException - Specified by:
optimizein interfacePhysicalOptimizer- Throws:
PhysicalOptimizationException
-
keepMultiwayJoinsInInitialPhysicalPlan
protected abstract boolean keepMultiwayJoinsInInitialPhysicalPlan()Return true if this optimizer expects that multiway joins are carried over from the given logical plan into the initial physical plan. Thefunction passes this flag as the second argument of theinvalid reference
#optimize(LogicalPlan)function.invalid reference
LogicalToPhysicalPlanConverter#convert(LogicalPlan, boolean) -
optimize
protected abstract Pair<PhysicalPlan,PhysicalOptimizationStats> optimize(PhysicalPlan initialPhysicalPlan, QueryProcContext ctxt) throws PhysicalOptimizationException - Throws:
PhysicalOptimizationException
-