Class CardinalityEstimationWorkerImpl
java.lang.Object
se.liu.ida.hefquin.engine.queryproc.impl.cardinality.CardinalityEstimationWorkerImpl
- All Implemented Interfaces:
LogicalPlanVisitor,CardinalityEstimationWorker
public class CardinalityEstimationWorkerImpl
extends Object
implements CardinalityEstimationWorker, LogicalPlanVisitor
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCardinalities(LogicalPlan... plans) Determine a cardinality estimate for each of the given plans recursively, assuming that every nullary subplan within each of the given plans is already annotated with a cardinality estimate.voidaddCardinalities(PhysicalPlan... plans) Determine a cardinality estimate for each of the given plans recursively, assuming that every nullary subplan within each of the given plans is already annotated with a cardinality estimate.protected voidaddCardinality(LogicalPlan plan) Assumes that all nullary subplans within the given plan are already annotated with a cardinality estimate.protected voidaddCardinality(PhysicalPlan plan) Assumes that all nullary subplans within the given plan are already annotated with a cardinality estimate.voidvoidstatic intaddWithoutExceedingMax(int x, int y) static intmultiplyWithoutExceedingMax(int x, int y) static QueryPlanProperty.Qualityvoidvisit(LogicalOpBind op) voidvisit(LogicalOpFilter op) voidvoidvoidvisit(LogicalOpGPAdd op) voidvoidvisit(LogicalOpJoin op) voidvoidvoidvoidvoidvisit(LogicalOpRequest<?, ?> op) voidvoidvisit(LogicalOpUnion op)
-
Field Details
-
currentSubPlan
-
-
Constructor Details
-
CardinalityEstimationWorkerImpl
public CardinalityEstimationWorkerImpl()
-
-
Method Details
-
addCardinalities
Description copied from interface:CardinalityEstimationWorkerDetermine a cardinality estimate for each of the given plans recursively, assuming that every nullary subplan within each of the given plans is already annotated with a cardinality estimate.- Specified by:
addCardinalitiesin interfaceCardinalityEstimationWorker
-
addCardinalities
Description copied from interface:CardinalityEstimationWorkerDetermine a cardinality estimate for each of the given plans recursively, assuming that every nullary subplan within each of the given plans is already annotated with a cardinality estimate.- Specified by:
addCardinalitiesin interfaceCardinalityEstimationWorker
-
addCardinality
Assumes that all nullary subplans within the given plan are already annotated with a cardinality estimate. -
addCardinality
Assumes that all nullary subplans within the given plan are already annotated with a cardinality estimate. -
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
visit
- Specified by:
visitin interfaceLogicalPlanVisitor
-
addCardinalityForUnion
public void addCardinalityForUnion() -
addCardinalityForInnerJoin
public void addCardinalityForInnerJoin() -
addWithoutExceedingMax
public static int addWithoutExceedingMax(int x, int y) -
multiplyWithoutExceedingMax
public static int multiplyWithoutExceedingMax(int x, int y) -
pickWorse
public static QueryPlanProperty.Quality pickWorse(QueryPlanProperty.Quality q1, QueryPlanProperty.Quality q2)
-