Package | Description |
---|---|
org.apache.calcite.adapter.druid |
Query provider based on a Druid database.
|
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 |
---|
AggregateExtractProjectRule |
AggregateFilterTransposeRule |
FilterAggregateTransposeRule |
FilterProjectTransposeRule
Planner rule that pushes
a
LogicalFilter
past a LogicalProject . |
ProjectFilterTransposeRule |
ProjectSortTransposeRule |
SortProjectTransposeRule |
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.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.
|
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
Aggregate s 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 . |
CalcRemoveRule
Planner rule that removes a trivial
LogicalCalc . |
CalcSplitRule |
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
LogicalFilter s. |
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
LogicalJoin s
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 . |
LoptOptimizeJoinRule
Planner rule that implements the heuristic planner for determining optimal
join orderings.
|
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.
|
MultiJoinProjectTransposeRule
MultiJoinProjectTransposeRule implements the rule for pulling
LogicalProject s 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.
|
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).
|
ReduceExpressionsRule
Collection of planner rules that apply various simplifying transformations on
RexNode trees.
|
SemiJoinFilterTransposeRule |
SemiJoinJoinTransposeRule |
SemiJoinProjectTransposeRule |
SemiJoinRemoveRule
Planner rule that removes a
SemiJoin s
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.