public class LoptSemiJoinOptimizer extends Object
| Constructor and Description |
|---|
LoptSemiJoinOptimizer(RelMetadataQuery mq,
LoptMultiJoin multiJoin,
RexBuilder rexBuilder) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
chooseBestSemiJoin(LoptMultiJoin multiJoin)
Finds the optimal semijoin for filtering the least costly fact table from
among the remaining possible semijoins to choose from.
|
RelNode |
getChosenSemiJoin(int factIdx)
Returns the optimal semijoin for the specified factor; may be the factor
itself if semijoins are not chosen for the factor.
|
void |
makePossibleSemiJoins(LoptMultiJoin multiJoin)
Determines all possible semijoins that can be used by dimension tables to
filter fact tables.
|
public LoptSemiJoinOptimizer(RelMetadataQuery mq, LoptMultiJoin multiJoin, RexBuilder rexBuilder)
public void makePossibleSemiJoins(LoptMultiJoin multiJoin)
multiJoin - join factors being optimizedpublic boolean chooseBestSemiJoin(LoptMultiJoin multiJoin)
multiJoin - join factors being optimizedpublic RelNode getChosenSemiJoin(int factIdx)
factIdx - Index corresponding to the desired factorCopyright © 2012-2022 Apache Software Foundation. All Rights Reserved.