org.teiid.query.optimizer.relational
Class RelationalPlanner
java.lang.Object
org.teiid.query.optimizer.relational.RelationalPlanner
public class RelationalPlanner
- extends java.lang.Object
This class generates a relational plan for query execution. The output of
this class is a PlanNode
object - this object then becomes the input to
PlanToProcessConverter
to produce a
RelationalPlan
.
Method Summary |
static RuleStack |
buildRules(PlanHints hints)
|
static Query |
createMatViewQuery(java.lang.Object matMetadataId,
java.lang.String matTableName,
java.util.List<? extends SelectSymbol> select,
boolean isGlobal)
|
static PlanNode |
createSelectNode(Criteria crit,
boolean isHaving)
|
PlanNode |
generatePlan(Command cmd)
|
static java.lang.Object |
getGlobalTempTableMetadataId(GroupSymbol table,
java.lang.String matTableName,
CommandContext context,
QueryMetadataInterface metadata,
AnalysisRecord analysisRecord)
|
void |
initialize(Command command,
IDGenerator idGenerator,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context)
|
static boolean |
isNoCacheGroup(QueryMetadataInterface metadata,
java.lang.Object metadataID,
Option option)
|
ProcessorPlan |
optimize(Command command)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MAT_PREFIX
public static final java.lang.String MAT_PREFIX
- See Also:
- Constant Field Values
RelationalPlanner
public RelationalPlanner()
optimize
public ProcessorPlan optimize(Command command)
throws QueryPlannerException,
QueryMetadataException,
TeiidComponentException
- Throws:
QueryPlannerException
QueryMetadataException
TeiidComponentException
initialize
public void initialize(Command command,
IDGenerator idGenerator,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context)
buildRules
public static RuleStack buildRules(PlanHints hints)
generatePlan
public PlanNode generatePlan(Command cmd)
throws TeiidComponentException,
TeiidProcessingException
- Throws:
TeiidComponentException
TeiidProcessingException
createSelectNode
public static PlanNode createSelectNode(Criteria crit,
boolean isHaving)
createMatViewQuery
public static Query createMatViewQuery(java.lang.Object matMetadataId,
java.lang.String matTableName,
java.util.List<? extends SelectSymbol> select,
boolean isGlobal)
getGlobalTempTableMetadataId
public static java.lang.Object getGlobalTempTableMetadataId(GroupSymbol table,
java.lang.String matTableName,
CommandContext context,
QueryMetadataInterface metadata,
AnalysisRecord analysisRecord)
throws QueryMetadataException,
TeiidComponentException,
QueryResolverException,
QueryValidatorException
- Throws:
QueryMetadataException
TeiidComponentException
QueryResolverException
QueryValidatorException
isNoCacheGroup
public static boolean isNoCacheGroup(QueryMetadataInterface metadata,
java.lang.Object metadataID,
Option option)
throws QueryMetadataException,
TeiidComponentException
- Throws:
QueryMetadataException
TeiidComponentException
Copyright © 2010. All Rights Reserved.