Class ExprNode
java.lang.Object
org.apache.drill.exec.store.base.filter.ExprNode
- Direct Known Subclasses:
ExprNode.ListNode
,ExprNode.RelOpNode
Condensed form of a Drill WHERE clause expression
node. Models only those nodes that are typically used
in rewrite-style filter push-down. Not intended for
the more complex interpreted form of filter push-down
such as that needed for directory-based partitions.
Each node references the source Calcite node as well as the selectivity that Calcite attaches to the node. Any expressions pushed to a scan must reduce the scan cost by the amount of the selectivity, else Calcite will conclude that the original plan (without push-down) is cheaper.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Represents a set of AND'ed expressions in Conjunctive Normal Form (CNF).static class
Semanticized form of a Calcite relational operator.static interface
static class
An expression node with an unlimited set of children.static class
Represents a set of OR'ed expressions in Disjunctive Normal Form (CNF).static class
-
Constructor Summary
-
Method Summary
-
Constructor Details
-
ExprNode
public ExprNode()
-
-
Method Details
-
tag
public void tag(org.apache.calcite.rex.RexNode rexNode) -
rexNode
public org.apache.calcite.rex.RexNode rexNode() -
selectivity
public abstract double selectivity()
-