Package org.apache.wayang.core.optimizer
Class AggregateOptimizationContext
- java.lang.Object
-
- org.apache.wayang.core.optimizer.OptimizationContext
-
- org.apache.wayang.core.optimizer.AggregateOptimizationContext
-
public class AggregateOptimizationContext extends OptimizationContext
ThisOptimizationContext
implementation aggregates severalOptimizationContext
s and exposes theirOptimizationContext.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 Constructor Description AggregateOptimizationContext(OptimizationContext.LoopContext loopContext)
-
Method Summary
-
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 Detail
-
AggregateOptimizationContext
public AggregateOptimizationContext(OptimizationContext.LoopContext loopContext)
-
-
Method Detail
-
addOneTimeOperator
public OptimizationContext.OperatorContext addOneTimeOperator(Operator operator)
Description copied from class:OptimizationContext
AddOptimizationContext.OperatorContext
s for theoperator
that is executed once within this instance. Also add its encasedOperator
s. Potentially invokeOptimizationContext.addOneTimeLoop(OperatorContext)
as well.- Specified by:
addOneTimeOperator
in classOptimizationContext
-
addOneTimeLoop
public void addOneTimeLoop(OptimizationContext.OperatorContext operatorContext)
Description copied from class:OptimizationContext
AddOptimizationContext
s for theloop
that is executed once within this instance.- Specified by:
addOneTimeLoop
in classOptimizationContext
-
getOperatorContext
public OptimizationContext.OperatorContext getOperatorContext(Operator operator)
Description copied from class:OptimizationContext
Return theOptimizationContext.OperatorContext
of theoperator
.- Specified by:
getOperatorContext
in classOptimizationContext
- Parameters:
operator
- a one-timeOperator
(i.e., not in a nested loop)- Returns:
- the
OptimizationContext.OperatorContext
for theOperator
ornull
if none
-
updateOperatorContexts
public void updateOperatorContexts()
This instance caches for efficiency reasons the aggregatedOptimizationContext.OperatorContext
s. This method causes a re-calculation of this cache.
-
getNestedLoopContext
public OptimizationContext.LoopContext getNestedLoopContext(LoopSubplan loopSubplan)
Description copied from class:OptimizationContext
Retrieve theOptimizationContext.LoopContext
for theloopSubplan
.- Specified by:
getNestedLoopContext
in classOptimizationContext
-
clearMarks
public void clearMarks()
Description copied from class:OptimizationContext
CallsOptimizationContext.OperatorContext.clearMarks()
for all nestedOptimizationContext.OperatorContext
s.- Specified by:
clearMarks
in classOptimizationContext
-
getLocalOperatorContexts
public java.util.Map<Operator,OptimizationContext.OperatorContext> getLocalOperatorContexts()
- Specified by:
getLocalOperatorContexts
in classOptimizationContext
- Returns:
- the
OptimizationContext.OperatorContext
s of this instance (exclusive of any base instance)
-
isTimeEstimatesComplete
public boolean isTimeEstimatesComplete()
- Specified by:
isTimeEstimatesComplete
in classOptimizationContext
- Returns:
- whether there is a
TimeEstimate
for eachExecutionOperator
-
mergeToBase
public void mergeToBase()
- Specified by:
mergeToBase
in classOptimizationContext
-
getDefaultOptimizationContexts
public java.util.List<DefaultOptimizationContext> getDefaultOptimizationContexts()
Description copied from class:OptimizationContext
Get theDefaultOptimizationContext
s represented by this instance.- Specified by:
getDefaultOptimizationContexts
in classOptimizationContext
- Returns:
- a
Collection
of saidDefaultOptimizationContext
s
-
-