Package org.apache.calcite.plan
Class RelOptLattice
java.lang.Object
org.apache.calcite.plan.RelOptLattice
Use of a lattice by the query optimizer.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription@Nullable Pair<CalciteSchema.TableEntry,
TileKey> getAggregate
(RelOptPlanner planner, ImmutableBitSet groupSet, List<Lattice.Measure> measureList) Retrieves a materialized table that will satisfy an aggregate query on the star table.@Nullable RelNode
Rewrites a relational expression to use a lattice.
-
Field Details
-
lattice
-
starRelOptTable
-
-
Constructor Details
-
RelOptLattice
-
-
Method Details
-
rootTable
-
rewrite
Rewrites a relational expression to use a lattice.Returns null if a rewrite is not possible.
- Parameters:
node
- Relational expression- Returns:
- Rewritten query
-
getAggregate
public @Nullable Pair<CalciteSchema.TableEntry,TileKey> getAggregate(RelOptPlanner planner, ImmutableBitSet groupSet, List<Lattice.Measure> measureList) Retrieves a materialized table that will satisfy an aggregate query on the star table.The current implementation creates a materialization and populates it, provided that
Lattice.auto
is true.Future implementations might return materializations at a different level of aggregation, from which the desired result can be obtained by rolling up.
- Parameters:
planner
- Current plannergroupSet
- Grouping keymeasureList
- Calls to aggregate functions- Returns:
- Materialized table
-