|
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | ||||||||
See:
Description
| Class Summary | |
|---|---|
| CalcRelSplitter | CalcRelSplitter operates on a CalcRel with multiple RexCall
sub-expressions that cannot all be implemented by a single concrete RelNode. |
| CalcRelSplitter.HighestUsageFinder | Builds an array of the highest level which contains an expression which uses each expression as an input. |
| CalcRelSplitter.ImplementTester | Visitor which returns whether an expression can be implemented in a given type of relational expression. |
| CalcRelSplitter.InputToCommonExprConverter | Shuttle which converts every reference to an input field in an expression to a reference to a common sub-expression. |
| CalcRelSplitter.MaxInputFinder | Finds the highest level used by any of the inputs of a given expression. |
| CalcRelSplitter.RelType | |
| FarragoAutoCalcRule | FarragoAutoCalcRule is a rule for implementing CalcRel via a
combination of the Fennel Calculator (FennelCalcRel) and the Java
Calculator (IterCalcRel). |
| FarragoAutoCalcRule.AutoCalcRelSplitter | |
| FarragoAutoCalcRule.FennelRelType | |
| FarragoAutoCalcRule.JavaRelType | |
| FarragoMultisetSplitterRule | FarragoMultisetSplitterRule is a planner rule which removes multiset operations from an expression. |
| FennelAggRel | FennelAggRel represents the Fennel implementation of aggregation. |
| FennelAggRule | FennelAggRule is a rule for transforming AggregateRel to FennelAggRel. |
| FennelBernoulliSamplingRel | FennelBernoulliSamplingRel implements Bernoulli-style table sampling using a generic Fennel XO. |
| FennelBernoulliSamplingRule | FennelBernoulliSamplingRule converts a SamplingRel into a FennelBernoulliSamplingRel, regardless of whether the original SamplingRel
specified Bernoulli or system sampling. |
| FennelBufferCommonRelSubExprRule | FennelBufferCommonRelSubExprRule is a rule that places a Fennel buffering node on top of a common relational subexpression, provided it makes sense to do so from a cost perspective. |
| FennelBufferRel | FennelBufferRel represents the Fennel implementation of a buffering stream. |
| FennelCalcRel | FennelCalcRel is the relational expression corresponding to a Calc implemented inside of Fennel. |
| FennelCalcRule | FennelCalcRule is a rule for implementing CalcRel via a Fennel
Calculator (FennelCalcRel). |
| FennelCartesianJoinRule | FennelCartesianJoinRule is a rule for converting an INNER JoinRel with no join condition into a FennelCartesianProductRel. |
| FennelCartesianProductRel | FennelCartesianProductRel represents the Fennel implementation of Cartesian product. |
| FennelCollectRule | FennelCollectRule is a rule to implement a call made with the SqlMultisetValueConstructor |
| FennelCorrelatorRule | FennelCorrelatorRule is a rule to implement the join of two correlated streams. |
| FennelDistinctSortRule | FennelDistinctSortRule is a rule for implementing DISTINCT via a Fennel sort. |
| FennelDoubleRel | FennelDoubleRel is a FennelRel which takes two FennelRels as inputs. |
| FennelEmptyRule | FennelEmptyRule provides an implementation for EmptyRel in terms of FennelValuesRel. |
| FennelIdxWriteRel | FennelIdxWriteRel takes its input and writes the records into an index. |
| FennelInsertRenameRule | FennelInsertRenameRule is a rule for converting a rename-only Project underneath an insert TableModificationRel into FennelRename. |
| FennelMergeRel | FennelMergeRel represents the Fennel implementation of UNION ALL. |
| FennelMultipleRel | Abstract base class for relational expressions which implement FennelRel and have variable numbers of inputs. |
| FennelMultiUseBufferRel | FennelMultiUseBufferRel represents the Fennel implementation of a buffering stream that's used in multiple places in a stream graph. |
| FennelNestedLoopJoinRel | FennelNestedLoopJoinRel represents the Fennel implementation of a nested loop join. |
| FennelNestedLoopJoinRule | FennelNestedLoopJoinRule is a rule for converting a JoinRel with a
join condition into a FennelNestedLoopJoinRel. |
| FennelOneRowRule | FennelOneRowRule provides an implementation for OneRowRel in terms of
FennelValuesRel. |
| FennelOptionalRel | FennelOptionalRel is a FennelRel which either takes zero inputs or
takes a single FennelRel as input. |
| FennelPullCollectRel | FennelPullCollectRel is the relational expression corresponding to a collect implemented inside of Fennel. |
| FennelPullCorrelatorRel | FennelPullCorrelatorRel is the relational expression corresponding to a correlation between two streams implemented inside of Fennel. |
| FennelPullUncollectRel | FennelPullUncollectRel is the relational expression corresponding to an UNNEST (Uncollect) implemented inside of Fennel. |
| FennelRelUtil | Static utilities for FennelRel implementations. |
| FennelRemoveRedundantSortRule | FennelRemoveRedundantSortRule removes instances of SortRel which are already satisfied by the physical ordering produced by an underlying FennelRel. |
| FennelRenameRel | FennelRenameRel is the Fennel implementation of a rename-only relational Project operator (which is a no-op). |
| FennelRenameRule | FennelRenameRule is a rule for converting a rename-only Project into FennelRename. |
| FennelReshapeRel | FennelReshapeRel represents the Fennel implementation of an execution stream that does projections, simple casting, and simple filtering. |
| FennelReshapeRule | FennelReshapeRule is a rule that converts a CalcRel into a FennelReshapeRel, provided the CalcRel only references simple
projections and contains a simple condition, if it has a condition. |
| FennelSingleRel | FennelSingleRel is a FennelRel corresponding to SingleRel,
and which only takes a FennelRel as input. |
| FennelSortRel | FennelSortRel is the relational expression corresponding to a sort implemented inside of Fennel. |
| FennelSortRule | FennelSortRule is a rule for implementing SortRel via a Fennel sort. |
| FennelTempIdxSearchRel | FennelTempIdxSearchRel searches a temporary index that is built during runtime using search keys read through dynamic parameters and search directives passed in through its input. |
| FennelUncollectRule | FennelUncollectRule is a rule to implement a call with the SqlStdOperatorTable.unnestOperator |
| FennelUnionRule | Rule to convert a UnionRel to Fennel calling convention. |
| FennelValuesRel | FennelValuesRel is Fennel implementation of ValuesRel. |
| FennelValuesRule | FennelValuesRule provides an implementation for ValuesRel in terms of
FennelValuesRel. |
| FennelWindowRel | FennelWindowRel is the relational expression which computes windowed aggregates inside of Fennel. |
| FennelWindowRel.Partition | A Partition is a collection of windowed aggregate expressions which
belong to the same FennelWindowRel.Window and have the same partitioning keys. |
| FennelWindowRel.RexWinAggCall | A call to a windowed aggregate function. |
| FennelWindowRel.Window | A Window is a range of input rows, defined by an upper and lower bound. |
| FennelWindowRule | FennelWindowRule is a rule for implementing a CalcRel which contains
windowed aggregates via a FennelWindowRel. |
| LhxAggRel | LhxAggRel represents hash aggregation. |
| LhxAggRule | LhxAggRule is a rule for transforming AggregateRel to LhxAggRel. |
| LhxIntersectRule | LhxIntersectRule is a rule for transforming IntersectRel to LhxJoinRel. |
| LhxJoinRel | LhxJoinRel implements the hash join. |
| LhxJoinRule | LhxJoinRule implements the planner rule for converting a JoinRel with join condition into a LhxJoinRel (hash join). |
| LhxMinusRule | LhxMinusRule is a rule for transforming MinusRel to LhxJoinRel. |
| LhxSemiJoinRule | LcsSemiJoinRule implements the rule for converting a join (which evaluates a semi join) expression into the a hash semi join. |
| WindowedAggSplitterRule | Rule which slices the CalcRel into sections which contain windowed
agg functions and sections which do not. |
| WindowedAggSplitterRule.WindowedAggRelSplitter | Splitter which distinguishes between windowed aggregation expressions
(calls to RexOver) and ordinary expressions. |
| Enum Summary | |
|---|---|
| FennelSearchEndpoint | FennelSearchEndpoint defines an enumeration corresponding to fennel/common/SearchEndpoint.h. |
| LhxJoinRelType | Enumeration of LucidDB Hash Join types. |
| Exception Summary | |
|---|---|
| CalcRelSplitter.CannotImplement | Control exception for CalcRelSplitter.ImplementTester. |
Defines relational expressions and rules for Fennel's physical algebra.
| Revision | $Id: //open/dev/farrago/src/net/sf/farrago/fennel/rel/package.html#1 $ |
|---|---|
| Copyright | Copyright (C) 2005-2009 The Eigenbase Project
Copyright (C) 2004-2009 SQLstream, Inc. Copyright (C) 2009-2009 LucidEra, Inc. |
| Author | Julian Hyde |
|
|||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | ||||||||