Class CFRBasedCostFunctionForPlan
java.lang.Object
se.liu.ida.hefquin.engine.queryproc.impl.poptimizer.costmodel.CFRBasedCostFunctionForPlan
- All Implemented Interfaces:
 CostFunctionForPlan
- Direct Known Subclasses:
 CFRBasedParallelismCostFunctionForPlan
Generic implementation of 
CostFunctionForPlan that can be used
 for any cost function that is defined as the sum of operator-specific
 cost values for all operators in the plan. This implementation uses
 recursion to first determine the cost values for subplans, and to
 determines the operator-specific cost values the implementation
 uses a CostFunctionForRootOp.- 
Field Summary
Fields - 
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCFRBasedCostFunctionForPlan(CostFunctionForRootOp costFctForRoot)  - 
Method Summary
Modifier and TypeMethodDescriptionaggregateValueForAllSubPlans(Set<PhysicalPlan> visitedPlan, CompletableFuture<Integer> futureForRoot, PhysicalPlan plan) initiateCostEstimation(Set<PhysicalPlan> visitedPlans, PhysicalPlan plan) A function for estimating the cost of a plan. 
- 
Field Details
- 
costFctForRoot
 
 - 
 - 
Constructor Details
- 
CFRBasedCostFunctionForPlan
 
 - 
 - 
Method Details
- 
initiateCostEstimation
public CompletableFuture<Integer> initiateCostEstimation(Set<PhysicalPlan> visitedPlans, PhysicalPlan plan) Description copied from interface:CostFunctionForPlanA function for estimating the cost of a plan.- Specified by:
 initiateCostEstimationin interfaceCostFunctionForPlan- Parameters:
 visitedPlans- : Record a set of sub-plans (of plan) that have been visited during the cost estimation. This set can be used for checking if a subplan has been visited or not.
 - 
aggregateValueForAllSubPlans
public CompletableFuture<Integer> aggregateValueForAllSubPlans(Set<PhysicalPlan> visitedPlan, CompletableFuture<Integer> futureForRoot, PhysicalPlan plan)  
 -