| 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.
|
| Class and Description |
|---|
| MultiJoin
A MultiJoin represents a join of N inputs, whereas regular Joins
represent strictly binary joins.
|
| Class and Description |
|---|
| AbstractJoinExtractFilterRule |
| AbstractMaterializedViewRule |
| AbstractMaterializedViewRule.Edge
Edge for graph
|
| AbstractMaterializedViewRule.EquivalenceClasses
Class representing an equivalence class, i.e., a set of equivalent columns
|
| AbstractMaterializedViewRule.MatchModality
Complete, view partial, or query partial.
|
| AbstractMaterializedViewRule.MaterializedViewAggregateRule
Materialized view rewriting for aggregate
|
| AbstractMaterializedViewRule.MaterializedViewJoinRule
Materialized view rewriting for join
|
| AbstractMaterializedViewRule.MaterializedViewOnlyAggregateRule
Rule that matches Aggregate.
|
| AbstractMaterializedViewRule.MaterializedViewOnlyFilterRule
Rule that matches Filter.
|
| AbstractMaterializedViewRule.MaterializedViewOnlyJoinRule
Rule that matches Join.
|
| AbstractMaterializedViewRule.MaterializedViewProjectAggregateRule
Rule that matches Project on Aggregate.
|
| AbstractMaterializedViewRule.MaterializedViewProjectFilterRule
Rule that matches Project on Filter.
|
| AbstractMaterializedViewRule.MaterializedViewProjectJoinRule
Rule that matches Project on Join.
|
| AbstractMaterializedViewRule.NodeLineage
Class to encapsulate expression lineage details
|
| AbstractMaterializedViewRule.ViewPartialRewriting
View partitioning result
|
| AggregateExpandDistinctAggregatesRule
Planner rule that expands distinct aggregates
(such as
COUNT(DISTINCT x)) from a
Aggregate. |
| AggregateFilterTransposeRule |
| AggregateJoinTransposeRule |
| AggregateProjectMergeRule |
| AggregateProjectPullUpConstantsRule
Planner rule that removes constant keys from an
Aggregate. |
| AggregateReduceFunctionsRule
Planner rule that reduces aggregate functions in
Aggregates to simpler forms. |
| AggregateRemoveRule
Planner rule that removes
a
Aggregate
if it computes no aggregate functions
(that is, it is implementing SELECT DISTINCT)
and the underlying relational expression is already distinct. |
| AggregateStarTableRule
Planner rule that matches an
Aggregate on
top of a StarTable.StarTableScan. |
| AggregateUnionAggregateRule |
| AggregateUnionTransposeRule |
| AggregateValuesRule |
| CalcMergeRule
Planner rule that merges a
LogicalCalc onto a
LogicalCalc. |
| CalcRelSplitter |
| CalcRelSplitter.CannotImplement
Control exception for
CalcRelSplitter.ImplementTester. |
| CalcRelSplitter.RelType
Type of relational expression.
|
| CalcRemoveRule
Planner rule that removes a trivial
LogicalCalc. |
| CalcSplitRule |
| DateRangeRules.ExtractFinder
Visitor that searches for calls to
EXTRACT, FLOOR or
CEIL, building a list of distinct time units. |
| FilterAggregateTransposeRule |
| FilterCalcMergeRule
Planner rule that merges a
LogicalFilter and a
LogicalCalc. |
| FilterCorrelateRule |
| FilterJoinRule
Planner rule that pushes filters above and
within a join node into the join node and/or its children nodes.
|
| FilterJoinRule.Predicate
Predicate that returns whether a filter is valid in the ON clause of a
join for this particular kind of join.
|
| FilterMergeRule
Planner rule that combines two
LogicalFilters. |
| FilterMultiJoinMergeRule |
| FilterProjectTransposeRule
Planner rule that pushes
a
LogicalFilter
past a LogicalProject. |
| FilterRemoveIsNotDistinctFromRule
Planner rule that replaces
IS NOT DISTINCT FROM
in a LogicalFilter
with logically equivalent operations. |
| FilterSetOpTransposeRule |
| FilterTableFunctionTransposeRule
Planner rule that pushes
a
LogicalFilter
past a LogicalTableFunctionScan. |
| FilterTableScanRule
Planner rule that converts
a
Filter
on a TableScan
of a FilterableTable
or a ProjectableFilterableTable
to a Bindables.BindableTableScan. |
| FilterToCalcRule
Planner rule that converts a
LogicalFilter to a
LogicalCalc. |
| IntersectToDistinctRule |
| JoinAddRedundantSemiJoinRule
Rule to add a semi-join into a join.
|
| JoinAssociateRule
Planner rule that changes a join based on the associativity rule.
|
| JoinCommuteRule
Planner rule that permutes the inputs to a
Join. |
| JoinExtractFilterRule |
| JoinProjectTransposeRule
Planner rule that matches a
Join one of whose inputs is a
LogicalProject, and
pulls the project up. |
| JoinPushExpressionsRule
Planner rule that pushes down expressions in "equal" join condition.
|
| JoinPushTransitivePredicatesRule |
| JoinToCorrelateRule
Rule that converts a
LogicalJoin
into a LogicalCorrelate, which can
then be implemented using nested loops. |
| JoinToMultiJoinRule
Planner rule to flatten a tree of
LogicalJoins
into a single MultiJoin with N inputs. |
| JoinUnionTransposeRule |
| LoptJoinTree
Utility class used to store a
Join tree
and the factors that make up the tree. |
| LoptJoinTree.BinaryTree
Simple binary tree class that stores an id in the leaf nodes and keeps
track of the parent LoptJoinTree object associated with the binary tree.
|
| LoptMultiJoin
Utility class that keeps track of the join factors that
make up a
MultiJoin. |
| LoptMultiJoin.Edge
Information about a join-condition.
|
| LoptMultiJoin.RemovableSelfJoin
Utility class used to keep track of the factors in a removable self-join.
|
| LoptOptimizeJoinRule
Planner rule that implements the heuristic planner for determining optimal
join orderings.
|
| LoptSemiJoinOptimizer
Implements the logic for determining the optimal
semi-joins to be used in processing joins in a query.
|
| LoptSemiJoinOptimizer.FemLocalIndex
Dummy class to allow code to compile.
|
| LoptSemiJoinOptimizer.LcsTable
Dummy class to allow code to compile.
|
| LoptSemiJoinOptimizer.LcsTableScan
Dummy class to allow code to compile.
|
| MaterializedViewFilterScanRule |
| MultiJoin
A MultiJoin represents a join of N inputs, whereas regular Joins
represent strictly binary joins.
|
| MultiJoinOptimizeBushyRule
Planner rule that finds an approximately optimal ordering for join operators
using a heuristic algorithm.
|
| MultiJoinOptimizeBushyRule.Vertex
Participant in a join (relation or join).
|
| MultiJoinProjectTransposeRule
MultiJoinProjectTransposeRule implements the rule for pulling
LogicalProjects that are on top of a
MultiJoin and beneath a
LogicalJoin so the
LogicalProject appears above the
LogicalJoin. |
| ProjectCalcMergeRule
Planner rule which merges a
LogicalProject and a
LogicalCalc. |
| ProjectFilterTransposeRule |
| ProjectJoinTransposeRule |
| ProjectMergeRule |
| ProjectMultiJoinMergeRule |
| ProjectRemoveRule
Planner rule that,
given a
Project node that
merely returns its input, converts the node into its child. |
| ProjectSetOpTransposeRule
Planner rule that pushes
a
LogicalProject
past a SetOp. |
| ProjectSortTransposeRule |
| ProjectTableScanRule
Planner rule that converts a
Project
on a TableScan
of a ProjectableFilterableTable
to a Bindables.BindableTableScan. |
| ProjectToCalcRule
Rule to convert a
LogicalProject to a
LogicalCalc |
| ProjectToWindowRule
Planner rule that slices a
Project
into sections which contain windowed
aggregate functions and sections which do not. |
| ProjectWindowTransposeRule
Planner rule that pushes
a
LogicalProject
past a LogicalWindow. |
| PushProjector.ExprCondition
A functor that replies true or false for a given expression.
|
| PushProjector.ExprConditionImpl
Implementation of
PushProjector.ExprCondition. |
| ReduceDecimalsRule
ReduceDecimalsRule is a rule which reduces decimal operations (such as casts
or arithmetic) into operations involving more primitive types (such as longs
and doubles).
|
| ReduceDecimalsRule.CastArgAsTypeExpander
An expander which casts decimal arguments as another type
|
| ReduceDecimalsRule.ExpanderMap
Maps a RexCall to a RexExpander
|
| ReduceDecimalsRule.RexExpander
Rewrites a decimal expression for a specific set of SqlOperator's.
|
| ReduceExpressionsRule
Collection of planner rules that apply various simplifying transformations on
RexNode trees.
|
| ReduceExpressionsRule.ReducibleExprLocator.Constancy
Whether an expression is constant, and if so, whether it can be
reduced to a simpler constant.
|
| SemiJoinFilterTransposeRule |
| SemiJoinJoinTransposeRule |
| SemiJoinProjectTransposeRule |
| SemiJoinRemoveRule
Planner rule that removes a
SemiJoins
from a join tree. |
| SemiJoinRule |
| SortJoinTransposeRule |
| SortProjectTransposeRule |
| SortRemoveRule
Planner rule that removes
a
Sort if its input is already sorted. |
| SortUnionTransposeRule |
| SubQueryRemoveRule
Transform that converts IN, EXISTS and scalar sub-queries into joins.
|
| TableScanRule
Planner rule that converts a
LogicalTableScan to the result
of calling RelOptTable.toRel(org.apache.calcite.plan.RelOptTable.ToRelContext). |
UnionEliminatorRule
UnionEliminatorRule checks to see if its possible to optimize a
Union call by eliminating the Union operator altogether in the case the call
consists of only one input. |
| UnionMergeRule |
| UnionPullUpConstantsRule
Planner rule that pulls up constants through a Union operator.
|
| UnionToDistinctRule |
| ValuesReduceRule
Planner rule that folds projections and filters into an underlying
LogicalValues. |
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.