| Package | Description |
|---|---|
| org.apache.calcite.plan |
Defines interfaces for constructing rule-based optimizers of
relational expressions.
|
| org.apache.calcite.rel.rules |
Provides a core set of planner rules.
|
| org.apache.calcite.rex |
Provides a language for representing row-expressions.
|
| org.apache.calcite.tools |
Provides utility classes.
|
| Modifier and Type | Field and Description |
|---|---|
private RexSimplify |
SubstitutionVisitor.simplify |
| Modifier and Type | Method and Description |
|---|---|
RexSimplify |
SubstitutionVisitor.UnifyRuleCall.getSimplify() |
| Modifier and Type | Method and Description |
|---|---|
static RexNode |
SubstitutionVisitor.splitFilter(RexSimplify simplify,
RexNode condition,
RexNode target)
Maps a condition onto a target.
|
| Modifier and Type | Field and Description |
|---|---|
private RexSimplify |
ReduceExpressionsRule.RexReplacer.simplify |
| Modifier and Type | Method and Description |
|---|---|
private static org.apache.commons.lang3.tuple.Triple<RexNode,RexNode,RexNode> |
AbstractMaterializedViewRule.computeCompensationPredicates(RexBuilder rexBuilder,
RexSimplify simplify,
AbstractMaterializedViewRule.EquivalenceClasses sourceEC,
org.apache.commons.lang3.tuple.Triple<RexNode,RexNode,RexNode> sourcePreds,
AbstractMaterializedViewRule.EquivalenceClasses targetEC,
org.apache.commons.lang3.tuple.Triple<RexNode,RexNode,RexNode> targetPreds,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> sourceToTargetTableMapping)
We check whether the predicates in the source are contained in the predicates
in the target.
|
protected com.google.common.collect.Multimap<Integer,Integer> |
AbstractMaterializedViewRule.MaterializedViewAggregateRule.generateMapping(RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
RelNode node,
RelNode target,
ImmutableBitSet positions,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> tableMapping,
AbstractMaterializedViewRule.EquivalenceClasses sourceEC,
List<RexNode> additionalExprs)
Mapping from node expressions to target expressions.
|
protected static boolean |
ReduceExpressionsRule.reduceExpressionsInternal(RelNode rel,
RexSimplify simplify,
List<RexNode> expList,
RelOptPredicateList predicates) |
protected abstract RelNode |
AbstractMaterializedViewRule.rewriteQuery(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
RexNode compensationColumnsEquiPred,
RexNode otherCompensationPred,
Project topProject,
RelNode node,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> viewToQueryTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses viewEC,
AbstractMaterializedViewRule.EquivalenceClasses queryEC)
If the view will be used in a union rewriting, this method is responsible for
rewriting the query branch of the union using the given compensation predicate.
|
protected RelNode |
AbstractMaterializedViewRule.MaterializedViewJoinRule.rewriteQuery(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
RexNode compensationColumnsEquiPred,
RexNode otherCompensationPred,
Project topProject,
RelNode node,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> viewToQueryTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses viewEC,
AbstractMaterializedViewRule.EquivalenceClasses queryEC) |
protected RelNode |
AbstractMaterializedViewRule.MaterializedViewAggregateRule.rewriteQuery(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
RexNode compensationColumnsEquiPred,
RexNode otherCompensationPred,
Project topProject,
RelNode node,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> queryToViewTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses viewEC,
AbstractMaterializedViewRule.EquivalenceClasses queryEC) |
protected abstract RelNode |
AbstractMaterializedViewRule.rewriteView(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
AbstractMaterializedViewRule.MatchModality matchModality,
boolean unionRewriting,
RelNode input,
Project topProject,
RelNode node,
Project topViewProject,
RelNode viewNode,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> queryToViewTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses queryEC)
This method is responsible for rewriting the query using the given view query.
|
protected RelNode |
AbstractMaterializedViewRule.MaterializedViewJoinRule.rewriteView(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
AbstractMaterializedViewRule.MatchModality matchModality,
boolean unionRewriting,
RelNode input,
Project topProject,
RelNode node,
Project topViewProject,
RelNode viewNode,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> queryToViewTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses queryEC) |
protected RelNode |
AbstractMaterializedViewRule.MaterializedViewAggregateRule.rewriteView(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
AbstractMaterializedViewRule.MatchModality matchModality,
boolean unionRewriting,
RelNode input,
Project topProject,
RelNode node,
Project topViewProject,
RelNode viewNode,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> queryToViewTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses queryEC) |
| Constructor and Description |
|---|
RexReplacer(RexSimplify simplify,
List<RexNode> reducibleExps,
List<RexNode> reducedValues,
List<Boolean> addCasts) |
| Modifier and Type | Field and Description |
|---|---|
private RexSimplify |
RexUtil.ExprSimplifier.simplify |
private RexSimplify |
RexProgramBuilder.simplify |
| Modifier and Type | Method and Description |
|---|---|
RexSimplify |
RexSimplify.withPredicates(RelOptPredicateList predicates)
Returns a RexSimplify the same as this but with a specified
predicates value. |
RexSimplify |
RexSimplify.withUnknownAsFalse(boolean unknownAsFalse)
Returns a RexSimplify the same as this but with a specified
unknownAsFalse value. |
| Modifier and Type | Method and Description |
|---|---|
static RexProgramBuilder |
RexProgramBuilder.create(RexBuilder rexBuilder,
RelDataType inputRowType,
List<RexNode> exprList,
List<? extends RexNode> projectList,
RexNode condition,
RelDataType outputRowType,
boolean normalize,
RexSimplify simplify)
Creates a program builder with the same contents as a program.
|
RexProgram |
RexProgram.normalize(RexBuilder rexBuilder,
RexSimplify simplify)
Creates a simplified/normalized copy of this program.
|
| Constructor and Description |
|---|
ExprSimplifier(RexSimplify simplify)
Deprecated.
|
ExprSimplifier(RexSimplify simplify,
boolean matchNullability) |
RexProgramBuilder(RelDataType inputRowType,
RexBuilder rexBuilder,
RexSimplify simplify)
Creates a program-builder.
|
RexProgramBuilder(RexBuilder rexBuilder,
RelDataType inputRowType,
List<RexNode> exprList,
Iterable<? extends RexNode> projectList,
RexNode condition,
RelDataType outputRowType,
boolean normalize,
RexSimplify simplify)
Creates a program builder with the same contents as a program.
|
| Modifier and Type | Field and Description |
|---|---|
private RexSimplify |
RelBuilder.simplifier |
private RexSimplify |
RelBuilder.simplifierUnknownAsFalse |
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.