|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectoptimizer.Scheduler
public class Scheduler
The class of a scheduler, which takes as input a FelixQuery, and
outputs an physical execution plan that is ready to be fed into Executor
.
The
output of a scheduler, i.e., ExecutionPlan
, can be regarded
as a description of the physical plan, which contains the execution
order of different statistical operators.
TODO: + better cycle support for operator graph.
Field Summary | |
---|---|
(package private) FelixQuery |
fq
Felix query to be scheduled. |
(package private) parser.CommandOptions |
options
Command line options. |
(package private) Felix |
parentFelix
Felix object. |
Constructor Summary | |
---|---|
Scheduler(Felix _felix,
FelixQuery _fq,
parser.CommandOptions _options)
The constructor. |
Method Summary | |
---|---|
OperatorBucketGraph |
dataDecomposition(java.util.HashSet<StatOperator> ops,
CostModel cm)
Partition the data into different parts. |
ExecutionPlan |
orderOperators(OperatorBucketGraph obg)
Schedule the order of running the operators. |
java.util.HashSet<StatOperator> |
ruleDecomposition(CostModel cm)
Partition the rules into different operators. |
ExecutionPlan |
schedule()
The entry of this optimizer. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
Felix parentFelix
FelixQuery fq
parser.CommandOptions options
Constructor Detail |
---|
public Scheduler(Felix _felix, FelixQuery _fq, parser.CommandOptions _options)
_felix
- _fq
- _options
- Method Detail |
---|
public java.util.HashSet<StatOperator> ruleDecomposition(CostModel cm)
cm
-
public OperatorBucketGraph dataDecomposition(java.util.HashSet<StatOperator> ops, CostModel cm)
ruleDecomposition
into different ones,
with each of them deals with different portions of data. These operators
will be put into a ConcurrentOperatorsBucket, which means they can be
executed in parallel.
ops
- cm
-
public ExecutionPlan orderOperators(OperatorBucketGraph obg)
obg
-
public ExecutionPlan schedule()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |