| Package | Description |
|---|---|
| org.apache.calcite.adapter.enumerable |
Query optimizer rules for Java calling convention.
|
| org.apache.calcite.adapter.jdbc |
Query provider based on a JDBC data source.
|
| org.apache.calcite.interpreter |
Provides an implementation of relational expressions using an interpreter.
|
| org.apache.calcite.rel.core |
Defines core relational expressions.
|
| org.apache.calcite.rel.logical |
Defines logical relational expressions.
|
| org.apache.calcite.rel.metadata |
Defines metadata interfaces and utilities for relational
expressions.
|
| org.apache.calcite.rel.rel2sql |
Translates a relational expression to SQL parse tree.
|
| org.apache.calcite.rel.rules |
Provides a core set of planner rules.
|
| org.apache.calcite.sql2rel |
Translates a SQL parse tree to relational expression.
|
| Modifier and Type | Class and Description |
|---|---|
class |
EnumerableAggregate
Implementation of
Aggregate in
enumerable calling convention. |
| Modifier and Type | Class and Description |
|---|---|
static class |
JdbcRules.JdbcAggregate
Aggregate operator implemented in JDBC convention.
|
| Modifier and Type | Class and Description |
|---|---|
static class |
Bindables.BindableAggregate
Implementation of
Aggregate
in bindable calling convention. |
| Modifier and Type | Method and Description |
|---|---|
void |
Nodes.CoreCompiler.visit(Aggregate agg) |
| Constructor and Description |
|---|
AggregateNode(Compiler compiler,
Aggregate rel) |
| Modifier and Type | Field and Description |
|---|---|
static com.google.common.base.Predicate<Aggregate> |
Aggregate.IS_NOT_GRAND_TOTAL |
static com.google.common.base.Predicate<Aggregate> |
Aggregate.IS_SIMPLE |
static com.google.common.base.Predicate<Aggregate> |
Aggregate.NO_INDICATOR |
| Modifier and Type | Method and Description |
|---|---|
abstract Aggregate |
Aggregate.copy(RelTraitSet traitSet,
RelNode input,
boolean indicator,
ImmutableBitSet groupSet,
List<ImmutableBitSet> groupSets,
List<AggregateCall> aggCalls)
Creates a copy of this aggregate.
|
| Modifier and Type | Method and Description |
|---|---|
Aggregate.AggCallBinding |
AggregateCall.createBinding(Aggregate aggregateRelBase)
Creates a binding of this call in the context of an
LogicalAggregate,
which can then be used to infer the return type. |
| Modifier and Type | Class and Description |
|---|---|
class |
LogicalAggregate
LogicalAggregate is a relational operator which eliminates
duplicates and computes totals. |
| Modifier and Type | Method and Description |
|---|---|
Boolean |
RelMdColumnUniqueness.areColumnsUnique(Aggregate rel,
RelMetadataQuery mq,
ImmutableBitSet columns,
boolean ignoreNulls) |
List<Double> |
RelMdSize.averageColumnSizes(Aggregate rel,
RelMetadataQuery mq) |
RelOptPredicateList |
RelMdAllPredicates.getAllPredicates(Aggregate agg,
RelMetadataQuery mq)
Extract predicates for an Aggregate.
|
Set<RelColumnOrigin> |
RelMdColumnOrigins.getColumnOrigins(Aggregate rel,
RelMetadataQuery mq,
int iOutputColumn) |
Double |
RelMdDistinctRowCount.getDistinctRowCount(Aggregate rel,
RelMetadataQuery mq,
ImmutableBitSet groupKey,
RexNode predicate) |
Set<RexNode> |
RelMdExpressionLineage.getExpressionLineage(Aggregate rel,
RelMetadataQuery mq,
RexNode outputExpression)
Expression lineage from
Aggregate. |
Double |
RelMdMaxRowCount.getMaxRowCount(Aggregate rel,
RelMetadataQuery mq) |
Double |
RelMdMinRowCount.getMinRowCount(Aggregate rel,
RelMetadataQuery mq) |
com.google.common.collect.Multimap<Class<? extends RelNode>,RelNode> |
RelMdNodeTypes.getNodeTypes(Aggregate rel,
RelMetadataQuery mq) |
Double |
RelMdPercentageOriginalRows.getPercentageOriginalRows(Aggregate rel,
RelMetadataQuery mq) |
Double |
RelMdPopulationSize.getPopulationSize(Aggregate rel,
RelMetadataQuery mq,
ImmutableBitSet groupKey) |
RelOptPredicateList |
RelMdPredicates.getPredicates(Aggregate agg,
RelMetadataQuery mq)
Infers predicates for an Aggregate.
|
Double |
RelMdRowCount.getRowCount(Aggregate rel,
RelMetadataQuery mq) |
Double |
RelMdSelectivity.getSelectivity(Aggregate rel,
RelMetadataQuery mq,
RexNode predicate) |
Set<RexTableInputRef.RelTableRef> |
RelMdTableReferences.getTableReferences(Aggregate rel,
RelMetadataQuery mq)
Table references from Aggregate.
|
Set<ImmutableBitSet> |
RelMdUniqueKeys.getUniqueKeys(Aggregate rel,
RelMetadataQuery mq,
boolean ignoreNulls) |
static void |
RelMdUtil.setAggChildKeys(ImmutableBitSet groupKey,
Aggregate aggRel,
ImmutableBitSet.Builder childKey)
Takes a bitmap representing a set of input references and extracts the
ones that reference the group by columns in an aggregate.
|
| Modifier and Type | Method and Description |
|---|---|
SqlImplementor.Result |
RelToSqlConverter.visit(Aggregate e) |
| Modifier and Type | Field and Description |
|---|---|
private static com.google.common.base.Predicate<Aggregate> |
SemiJoinRule.IS_EMPTY_AGGREGATE |
| Modifier and Type | Method and Description |
|---|---|
static RelNode |
AggregateProjectMergeRule.apply(RelOptRuleCall call,
Aggregate aggregate,
Project project) |
protected void |
AggregateStarTableRule.apply(RelOptRuleCall call,
Project postProject,
Aggregate aggregate,
StarTable.StarTableScan scan) |
private boolean |
FilterAggregateTransposeRule.canPush(Aggregate aggregate,
ImmutableBitSet rCols) |
private RelBuilder |
AggregateExpandDistinctAggregatesRule.convertMonopole(RelBuilder relBuilder,
Aggregate aggregate,
List<Integer> argList,
int filterArg)
Converts an aggregate relational expression that contains just one
distinct aggregate function (or perhaps several over the same arguments)
and no non-distinct aggregate functions.
|
private RelBuilder |
AggregateExpandDistinctAggregatesRule.convertSingletonDistinct(RelBuilder relBuilder,
Aggregate aggregate,
Set<Pair<List<Integer>,Integer>> argLists)
Converts an aggregate with one distinct aggregate and one or more
non-distinct aggregates to multi-phase aggregates (see reference example
below).
|
private AggregateCall |
AggregateReduceFunctionsRule.createAggregateCallWithBinding(RelDataTypeFactory typeFactory,
SqlAggFunction aggFunction,
RelDataType operandType,
Aggregate oldAggRel,
AggregateCall oldCall,
int argOrdinal) |
private RelBuilder |
AggregateExpandDistinctAggregatesRule.createSelectDistinct(RelBuilder relBuilder,
Aggregate aggregate,
List<Integer> argList,
int filterArg,
Map<Integer,Integer> sourceOf)
Given an
Aggregate
and the ordinals of the arguments to a
particular call to an aggregate function, creates a 'select distinct'
relational expression which projects the group columns and those
arguments but nothing else. |
private void |
AggregateExpandDistinctAggregatesRule.doRewrite(RelBuilder relBuilder,
Aggregate aggregate,
int n,
List<Integer> argList,
int filterArg,
List<RexInputRef> refs)
Converts all distinct aggregate calls to a given set of arguments.
|
protected void |
AggregateReduceFunctionsRule.newAggregateRel(RelBuilder relBuilder,
Aggregate oldAggregate,
List<AggregateCall> newCalls)
Do a shallow clone of oldAggRel and update aggCalls.
|
protected void |
SemiJoinRule.perform(RelOptRuleCall call,
Project project,
Join join,
RelNode left,
Aggregate aggregate) |
private RexNode |
AggregateReduceFunctionsRule.reduceAgg(Aggregate oldAggRel,
AggregateCall oldCall,
List<AggregateCall> newCalls,
Map<AggregateCall,RexNode> aggCallMapping,
List<RexNode> inputExprs) |
private void |
AggregateReduceFunctionsRule.reduceAggs(RelOptRuleCall ruleCall,
Aggregate oldAggRel)
Reduces all calls to AVG, STDDEV_POP, STDDEV_SAMP, VAR_POP, VAR_SAMP in
the aggregates list to.
|
private RexNode |
AggregateReduceFunctionsRule.reduceAvg(Aggregate oldAggRel,
AggregateCall oldCall,
List<AggregateCall> newCalls,
Map<AggregateCall,RexNode> aggCallMapping,
List<RexNode> inputExprs) |
private RexNode |
AggregateReduceFunctionsRule.reduceStddev(Aggregate oldAggRel,
AggregateCall oldCall,
boolean biased,
boolean sqrt,
List<AggregateCall> newCalls,
Map<AggregateCall,RexNode> aggCallMapping,
List<RexNode> inputExprs) |
private RexNode |
AggregateReduceFunctionsRule.reduceSum(Aggregate oldAggRel,
AggregateCall oldCall,
List<AggregateCall> newCalls,
Map<AggregateCall,RexNode> aggCallMapping) |
private void |
AggregateExpandDistinctAggregatesRule.rewriteUsingGroupingSets(RelOptRuleCall call,
Aggregate aggregate) |
| Constructor and Description |
|---|
AggregateExpandDistinctAggregatesRule(Class<? extends Aggregate> clazz,
boolean useGroupingSets,
RelBuilderFactory relBuilderFactory) |
AggregateExtractProjectRule(Class<? extends Aggregate> aggregateClass,
Class<? extends RelNode> inputClass,
RelBuilderFactory relBuilderFactory)
Creates an AggregateExtractProjectRule.
|
AggregateJoinTransposeRule(Class<? extends Aggregate> aggregateClass,
Class<? extends Join> joinClass,
RelBuilderFactory relBuilderFactory,
boolean allowFunctions)
Creates an AggregateJoinTransposeRule.
|
AggregateJoinTransposeRule(Class<? extends Aggregate> aggregateClass,
RelFactories.AggregateFactory aggregateFactory,
Class<? extends Join> joinClass,
RelFactories.JoinFactory joinFactory)
Deprecated.
|
AggregateJoinTransposeRule(Class<? extends Aggregate> aggregateClass,
RelFactories.AggregateFactory aggregateFactory,
Class<? extends Join> joinClass,
RelFactories.JoinFactory joinFactory,
boolean allowFunctions)
Deprecated.
|
AggregateJoinTransposeRule(Class<? extends Aggregate> aggregateClass,
RelFactories.AggregateFactory aggregateFactory,
Class<? extends Join> joinClass,
RelFactories.JoinFactory joinFactory,
RelFactories.ProjectFactory projectFactory)
Deprecated.
|
AggregateJoinTransposeRule(Class<? extends Aggregate> aggregateClass,
RelFactories.AggregateFactory aggregateFactory,
Class<? extends Join> joinClass,
RelFactories.JoinFactory joinFactory,
RelFactories.ProjectFactory projectFactory,
boolean allowFunctions)
Deprecated.
|
AggregateProjectMergeRule(Class<? extends Aggregate> aggregateClass,
Class<? extends Project> projectClass,
RelBuilderFactory relBuilderFactory) |
AggregateProjectPullUpConstantsRule(Class<? extends Aggregate> aggregateClass,
Class<? extends RelNode> inputClass,
RelBuilderFactory relBuilderFactory,
String description)
Creates an AggregateProjectPullUpConstantsRule.
|
AggregateRemoveRule(Class<? extends Aggregate> aggregateClass)
Deprecated.
|
AggregateRemoveRule(Class<? extends Aggregate> aggregateClass,
RelBuilderFactory relBuilderFactory)
Creates an AggregateRemoveRule.
|
AggregateUnionAggregateRule(Class<? extends Aggregate> aggregateClass,
Class<? extends Union> unionClass,
Class<? extends RelNode> firstUnionInputClass,
Class<? extends RelNode> secondUnionInputClass,
RelBuilderFactory relBuilderFactory,
String desc)
Creates a AggregateUnionAggregateRule.
|
AggregateUnionAggregateRule(Class<? extends Aggregate> aggregateClass,
RelFactories.AggregateFactory aggregateFactory,
Class<? extends Union> unionClass,
RelFactories.SetOpFactory setOpFactory)
Deprecated.
|
AggregateUnionTransposeRule(Class<? extends Aggregate> aggregateClass,
Class<? extends Union> unionClass,
RelBuilderFactory relBuilderFactory)
Creates an AggregateUnionTransposeRule.
|
AggregateUnionTransposeRule(Class<? extends Aggregate> aggregateClass,
RelFactories.AggregateFactory aggregateFactory,
Class<? extends Union> unionClass,
RelFactories.SetOpFactory setOpFactory)
Deprecated.
|
FilterAggregateTransposeRule(Class<? extends Filter> filterClass,
RelBuilderFactory builderFactory,
Class<? extends Aggregate> aggregateClass)
Creates a FilterAggregateTransposeRule.
|
FilterAggregateTransposeRule(Class<? extends Filter> filterClass,
RelFactories.FilterFactory filterFactory,
Class<? extends Aggregate> aggregateClass)
Deprecated.
|
JoinToSemiJoinRule(Class<Join> joinClass,
Class<Aggregate> aggregateClass,
RelBuilderFactory relBuilderFactory,
String description)
Creates a JoinToSemiJoinRule.
|
ProjectToSemiJoinRule(Class<Project> projectClass,
Class<Join> joinClass,
Class<Aggregate> aggregateClass,
RelBuilderFactory relBuilderFactory,
String description)
Creates a ProjectToSemiJoinRule.
|
SemiJoinRule(Class<Join> joinClass,
Class<Aggregate> aggregateClass,
RelBuilderFactory relBuilderFactory,
String description) |
SemiJoinRule(Class<Project> projectClass,
Class<Join> joinClass,
Class<Aggregate> aggregateClass,
RelBuilderFactory relBuilderFactory,
String description) |
| Modifier and Type | Method and Description |
|---|---|
RelFieldTrimmer.TrimResult |
RelFieldTrimmer.trimFields(Aggregate aggregate,
ImmutableBitSet fieldsUsed,
Set<RelDataTypeField> extraFields)
|
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.