Package org.apache.wayang.core.optimizer
Class AggregateOptimizationContext
java.lang.Object
org.apache.wayang.core.optimizer.OptimizationContext
org.apache.wayang.core.optimizer.AggregateOptimizationContext
This
OptimizationContext implementation aggregates several OptimizationContexts and exposes
their OptimizationContext.OperatorContext in an aggregated manner.-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.wayang.core.optimizer.OptimizationContext
OptimizationContext.LoopContext, OptimizationContext.OperatorContext -
Field Summary
Fields inherited from class org.apache.wayang.core.optimizer.OptimizationContext
hostLoopContext, job, logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddOneTimeLoop(OptimizationContext.OperatorContext operatorContext) AddOptimizationContexts for theloopthat is executed once within this instance.addOneTimeOperator(Operator operator) AddOptimizationContext.OperatorContexts for theoperatorthat is executed once within this instance.voidCallsOptimizationContext.OperatorContext.clearMarks()for all nestedOptimizationContext.OperatorContexts.Get theDefaultOptimizationContexts represented by this instance.getNestedLoopContext(LoopSubplan loopSubplan) Retrieve theOptimizationContext.LoopContextfor theloopSubplan.getOperatorContext(Operator operator) Return theOptimizationContext.OperatorContextof theoperator.booleanvoidvoidThis instance caches for efficiency reasons the aggregatedOptimizationContext.OperatorContexts.Methods inherited from class org.apache.wayang.core.optimizer.OptimizationContext
addOneTimeOperators, getBase, getChannelConversionGraph, getConfiguration, getIterationNumber, getJob, getLoopContext, getNextIterationContext, getParent, getPruningStrategies, getRootParent, isFinalIteration, isInitialIteration, putIntoJobCache, queryJobCache, queryJobCache
-
Constructor Details
-
AggregateOptimizationContext
-
-
Method Details
-
addOneTimeOperator
Description copied from class:OptimizationContextAddOptimizationContext.OperatorContexts for theoperatorthat is executed once within this instance. Also add its encasedOperators. Potentially invokeOptimizationContext.addOneTimeLoop(OperatorContext)as well.- Specified by:
addOneTimeOperatorin classOptimizationContext
-
addOneTimeLoop
Description copied from class:OptimizationContextAddOptimizationContexts for theloopthat is executed once within this instance.- Specified by:
addOneTimeLoopin classOptimizationContext
-
getOperatorContext
Description copied from class:OptimizationContextReturn theOptimizationContext.OperatorContextof theoperator.- Specified by:
getOperatorContextin classOptimizationContext- Parameters:
operator- a one-timeOperator(i.e., not in a nested loop)- Returns:
- the
OptimizationContext.OperatorContextfor theOperatorornullif none
-
updateOperatorContexts
public void updateOperatorContexts()This instance caches for efficiency reasons the aggregatedOptimizationContext.OperatorContexts. This method causes a re-calculation of this cache. -
getNestedLoopContext
Description copied from class:OptimizationContextRetrieve theOptimizationContext.LoopContextfor theloopSubplan.- Specified by:
getNestedLoopContextin classOptimizationContext
-
clearMarks
public void clearMarks()Description copied from class:OptimizationContextCallsOptimizationContext.OperatorContext.clearMarks()for all nestedOptimizationContext.OperatorContexts.- Specified by:
clearMarksin classOptimizationContext
-
getLocalOperatorContexts
- Specified by:
getLocalOperatorContextsin classOptimizationContext- Returns:
- the
OptimizationContext.OperatorContexts of this instance (exclusive of any base instance)
-
isTimeEstimatesComplete
public boolean isTimeEstimatesComplete()- Specified by:
isTimeEstimatesCompletein classOptimizationContext- Returns:
- whether there is a
TimeEstimatefor eachExecutionOperator
-
mergeToBase
public void mergeToBase()- Specified by:
mergeToBasein classOptimizationContext
-
getDefaultOptimizationContexts
Description copied from class:OptimizationContextGet theDefaultOptimizationContexts represented by this instance.- Specified by:
getDefaultOptimizationContextsin classOptimizationContext- Returns:
- a
Collectionof saidDefaultOptimizationContexts
-