Class KuduNestedJoin

  • All Implemented Interfaces:
    Cloneable, org.apache.calcite.adapter.enumerable.EnumerableRel, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.PhysicalNode, org.apache.calcite.rel.RelNode

    public class KuduNestedJoin
    extends org.apache.calcite.rel.core.Join
    implements org.apache.calcite.adapter.enumerable.EnumerableRel
    Implements a join algorithm between two KuduToEnumerableRel objects using EnumerableDefaults.correlateBatchJoin(JoinType, Enumerable, Function1, Function2, Predicate2, int)
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.apache.calcite.adapter.enumerable.EnumerableRel

        org.apache.calcite.adapter.enumerable.EnumerableRel.Prefer, org.apache.calcite.adapter.enumerable.EnumerableRel.Result
      • Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode

        org.apache.calcite.rel.RelNode.Context
    • Field Summary

      • Fields inherited from class org.apache.calcite.rel.core.Join

        condition, hints, joinInfo, joinType, variablesSet
      • Fields inherited from class org.apache.calcite.rel.BiRel

        left, right
      • Fields inherited from class org.apache.calcite.rel.AbstractRelNode

        digest, id, rowType, traitSet
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected KuduNestedJoin​(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traits, List<org.apache.calcite.rel.hint.RelHint> hints, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, int batchSize)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.apache.calcite.plan.RelOptCost computeSelfCost​(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq)  
      KuduNestedJoin copy​(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoinDone)  
      static KuduNestedJoin create​(org.apache.calcite.rel.RelNode left, org.apache.calcite.rel.RelNode right, org.apache.calcite.rex.RexNode condition, org.apache.calcite.rel.core.JoinRelType joinType, int batchSize, List<org.apache.calcite.rel.hint.RelHint> hints)  
      org.apache.calcite.rel.RelWriter explainTerms​(org.apache.calcite.rel.RelWriter pw)  
      org.apache.calcite.adapter.enumerable.EnumerableRel.Result implement​(org.apache.calcite.adapter.enumerable.EnumerableRelImplementor implementor, org.apache.calcite.adapter.enumerable.EnumerableRel.Prefer pref)  
      • Methods inherited from class org.apache.calcite.rel.core.Join

        accept, analyzeCondition, copy, createJoinType, deepEquals0, deepHashCode0, deriveJoinRowType, deriveRowType, estimateJoinedRows, estimateRowCount, getCondition, getHints, getJoinType, getSystemFieldList, getVariablesSet, isSemiJoin, isSemiJoinDone, isValid
      • Methods inherited from class org.apache.calcite.rel.BiRel

        childrenAccept, getInputs, getLeft, getRight, replaceInput
      • Methods inherited from class org.apache.calcite.rel.AbstractRelNode

        accept, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, hashCode, isEnforcer, metadata, onRegister, recomputeDigest, register, sole, toString
      • Methods inherited from interface org.apache.calcite.adapter.enumerable.EnumerableRel

        deriveTraits, getDeriveMode, passThroughTraits
      • Methods inherited from interface org.apache.calcite.rel.hint.Hintable

        attachHints, withHints
      • Methods inherited from interface org.apache.calcite.rel.PhysicalNode

        derive, derive, passThrough
      • Methods inherited from interface org.apache.calcite.rel.RelNode

        accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, estimateRowCount, explain, explain, fieldIsNullable, getConvention, getCorrelVariable, getDigest, getExpectedInputRowType, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTable, getVariablesSet, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, replaceInput
      • Methods inherited from interface org.apache.calcite.plan.RelOptNode

        getCluster, getDescription, getId, getTraitSet
    • Constructor Detail

      • KuduNestedJoin

        protected KuduNestedJoin​(org.apache.calcite.plan.RelOptCluster cluster,
                                 org.apache.calcite.plan.RelTraitSet traits,
                                 List<org.apache.calcite.rel.hint.RelHint> hints,
                                 org.apache.calcite.rel.RelNode left,
                                 org.apache.calcite.rel.RelNode right,
                                 org.apache.calcite.rex.RexNode condition,
                                 org.apache.calcite.rel.core.JoinRelType joinType,
                                 int batchSize)
    • Method Detail

      • create

        public static KuduNestedJoin create​(org.apache.calcite.rel.RelNode left,
                                            org.apache.calcite.rel.RelNode right,
                                            org.apache.calcite.rex.RexNode condition,
                                            org.apache.calcite.rel.core.JoinRelType joinType,
                                            int batchSize,
                                            List<org.apache.calcite.rel.hint.RelHint> hints)
      • copy

        public KuduNestedJoin copy​(org.apache.calcite.plan.RelTraitSet traitSet,
                                   org.apache.calcite.rex.RexNode condition,
                                   org.apache.calcite.rel.RelNode left,
                                   org.apache.calcite.rel.RelNode right,
                                   org.apache.calcite.rel.core.JoinRelType joinType,
                                   boolean semiJoinDone)
        Specified by:
        copy in class org.apache.calcite.rel.core.Join
      • computeSelfCost

        public org.apache.calcite.plan.RelOptCost computeSelfCost​(org.apache.calcite.plan.RelOptPlanner planner,
                                                                  org.apache.calcite.rel.metadata.RelMetadataQuery mq)
        Specified by:
        computeSelfCost in interface org.apache.calcite.rel.RelNode
        Overrides:
        computeSelfCost in class org.apache.calcite.rel.core.Join
      • explainTerms

        public org.apache.calcite.rel.RelWriter explainTerms​(org.apache.calcite.rel.RelWriter pw)
        Overrides:
        explainTerms in class org.apache.calcite.rel.core.Join
      • implement

        public org.apache.calcite.adapter.enumerable.EnumerableRel.Result implement​(org.apache.calcite.adapter.enumerable.EnumerableRelImplementor implementor,
                                                                                    org.apache.calcite.adapter.enumerable.EnumerableRel.Prefer pref)
        Specified by:
        implement in interface org.apache.calcite.adapter.enumerable.EnumerableRel