Class FlinkRelBuilder
java.lang.Object
org.apache.calcite.tools.RelBuilder
org.apache.flink.table.planner.calcite.FlinkRelBuilder
Flink-specific
RelBuilder.-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.calcite.tools.RelBuilder
RelBuilder.AggCall, RelBuilder.Config, RelBuilder.GroupKey, RelBuilder.OverCall -
Field Summary
FieldsFields inherited from class org.apache.calcite.tools.RelBuilder
cluster, relOptSchema -
Method Summary
Modifier and TypeMethodDescriptionaggregate(RelBuilder.GroupKey groupKey, Iterable<RelBuilder.AggCall> aggCalls) Build non-window aggregate for either aggregate or table aggregate.FlinkTypeFactoryReturns the type factory.static FlinkRelBuilderof(org.apache.calcite.plan.Context context, org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelOptSchema relOptSchema) static FlinkRelBuilderof(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelOptSchema relOptSchema) static org.apache.calcite.tools.RelBuilderFactoryproto(org.apache.calcite.plan.Context context) static RelBuilderpushFunctionScan(RelBuilder relBuilder, org.apache.calcite.sql.SqlOperator operator, int inputCount, Iterable<org.apache.calcite.rex.RexNode> operands, List<String> aliases) RelBuilder.functionScan(SqlOperator, int, Iterable)cannot work smoothly with aliases which is why we implement a custom one.queryOperation(org.apache.flink.table.operations.QueryOperation queryOperation) rank(org.apache.calcite.util.ImmutableBitSet partitionKey, org.apache.calcite.rel.RelCollation orderKey, org.apache.flink.table.runtime.operators.rank.RankType rankType, org.apache.flink.table.runtime.operators.rank.RankRange rankRange, org.apache.calcite.rel.type.RelDataTypeField rankNumberType, boolean outputRankNumber) transform(UnaryOperator<RelBuilder.Config> transform) Creates a copy of this RelBuilder, with the same state as this, applying a transform to the config.watermark(int rowtimeFieldIndex, org.apache.calcite.rex.RexNode watermarkExpr) Build watermark assigner relational node.windowAggregate(LogicalWindow window, RelBuilder.GroupKey groupKey, List<org.apache.flink.table.runtime.groupwindow.NamedWindowProperty> namedProperties, Iterable<RelBuilder.AggCall> aggCalls) Build window aggregate for either aggregate or table aggregate.Methods inherited from class org.apache.calcite.tools.RelBuilder
adoptConvention, aggregate, aggregate, aggregateCall, aggregateCall, aggregateCall, aggregateCall, aggregateCall, aggregateCall, aggregateCall, aggregateCall, aggregateCall, alias, all, and, and, antiJoin, antiJoin, arrayQuery, as, avg, avg, between, build, call, call, cast, cast, cast, clear, convert, correlate, correlate, count, count, count, count, countStar, create, currentRow, cursor, desc, distinct, dot, dot, empty, equals, exchange, exists, field, field, field, field, field, field, field, fields, fields, fields, fields, fields, fields, fields, filter, filter, filter, filter, following, functionScan, functionScan, getCluster, getRelOptSchema, getRexBuilder, getScanFactory, greaterThan, greaterThanOrEqual, groupKey, groupKey, groupKey, groupKey, groupKey, groupKey, groupKey, groupKey, groupKey, groupKey, hints, hints, in, in, in, in, intersect, intersect, isDistinctFrom, isNotDistinctFrom, isNotNull, isNull, join, join, join, join, join, lessThan, lessThanOrEqual, let, limit, literal, mapQuery, match, max, max, min, min, minus, minus, multisetQuery, not, notEquals, nullsFirst, nullsLast, or, or, patternAlter, patternAlter, patternConcat, patternConcat, patternExclude, patternField, patternPermute, patternPermute, patternQuantify, patternQuantify, peek, peek, peek, permute, pivot, preceding, project, project, project, project, project, projectExcept, projectExcept, projectNamed, projectNamed, projectPlus, projectPlus, proto, push, pushAll, rename, repeatUnion, repeatUnion, scalarQuery, scan, scan, semiJoin, semiJoin, size, snapshot, some, sort, sort, sort, sort, sortExchange, sortLimit, sortLimit, sortLimit, sum, sum, toString, transientScan, transientScan, unboundedFollowing, unboundedPreceding, uncollect, union, union, unique, unpivot, values, values, values, values, variable, with, withPredicates, withSimplifier
-
Field Details
-
FLINK_REL_BUILDER_CONFIG
-
-
Method Details
-
of
public static FlinkRelBuilder of(org.apache.calcite.plan.Context context, org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelOptSchema relOptSchema) -
of
public static FlinkRelBuilder of(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelOptSchema relOptSchema) -
proto
public static org.apache.calcite.tools.RelBuilderFactory proto(org.apache.calcite.plan.Context context) -
pushFunctionScan
public static RelBuilder pushFunctionScan(RelBuilder relBuilder, org.apache.calcite.sql.SqlOperator operator, int inputCount, Iterable<org.apache.calcite.rex.RexNode> operands, List<String> aliases) RelBuilder.functionScan(SqlOperator, int, Iterable)cannot work smoothly with aliases which is why we implement a custom one. The method is static because someRelOptRules don't useFlinkRelBuilder. -
expand
-
rank
public RelBuilder rank(org.apache.calcite.util.ImmutableBitSet partitionKey, org.apache.calcite.rel.RelCollation orderKey, org.apache.flink.table.runtime.operators.rank.RankType rankType, org.apache.flink.table.runtime.operators.rank.RankRange rankRange, org.apache.calcite.rel.type.RelDataTypeField rankNumberType, boolean outputRankNumber) -
aggregate
Build non-window aggregate for either aggregate or table aggregate.- Overrides:
aggregatein classRelBuilder
-
windowAggregate
public RelBuilder windowAggregate(LogicalWindow window, RelBuilder.GroupKey groupKey, List<org.apache.flink.table.runtime.groupwindow.NamedWindowProperty> namedProperties, Iterable<RelBuilder.AggCall> aggCalls) Build window aggregate for either aggregate or table aggregate. -
watermark
Build watermark assigner relational node. -
queryOperation
-
getTypeFactory
public FlinkTypeFactory getTypeFactory()Description copied from class:RelBuilderReturns the type factory.- Overrides:
getTypeFactoryin classRelBuilder
-
transform
Description copied from class:RelBuilderCreates a copy of this RelBuilder, with the same state as this, applying a transform to the config.- Overrides:
transformin classRelBuilder
-