Class BeamSideInputLookupJoinRel

java.lang.Object
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.AbstractRelNode
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.BiRel
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.Join
org.apache.beam.sdk.extensions.sql.impl.rel.BeamJoinRel
org.apache.beam.sdk.extensions.sql.impl.rel.BeamSideInputLookupJoinRel
All Implemented Interfaces:
Cloneable, BeamRelNode, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptNode, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.hint.Hintable, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode

public class BeamSideInputLookupJoinRel extends BeamJoinRel
A BeamJoinRel which does Lookup Join

This Join Covers the case:

  • SeekableTable JOIN non SeekableTable

As Join is implemented as lookup, there are some constraints:

  • FULL OUTER JOIN is not supported.
  • If it's a LEFT OUTER JOIN, the non Seekable table should on the left side.
  • If it's a RIGHT OUTER JOIN, the non Seekable table should on the right side.

General constraints:

  • Only equi-join is supported.
  • CROSS JOIN is not supported.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode

    org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode.Context
  • Field Summary

    Fields inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.Join

    condition, hints, joinInfo, joinType, variablesSet

    Fields inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.BiRel

    left, right

    Fields inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.AbstractRelNode

    digest, id, rowType, traitSet
  • Constructor Summary

    Constructors
    Constructor
    Description
    BeamSideInputLookupJoinRel(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptCluster cluster, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode left, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode right, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rex.RexNode condition, Set<org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.CorrelationId> variablesSet, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.JoinRelType joinType)
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
    org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.Join
    copy(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rex.RexNode conditionExpr, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode left, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode right, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoinDone)
     

    Methods inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.Join

    accept, analyzeCondition, computeSelfCost, copy, createJoinType, deepEquals0, deepHashCode0, deriveJoinRowType, deriveRowType, estimateJoinedRows, estimateRowCount, explainTerms, getCondition, getHints, getJoinType, getSystemFieldList, getVariablesSet, isSemiJoin, isSemiJoinDone, isValid

    Methods inherited from class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.BiRel

    childrenAccept, getInputs, getLeft, getRight, replaceInput

    Methods inherited from class org.apache.beam.vendor.calcite.v1_28_0.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 class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.beam.sdk.extensions.sql.impl.rel.BeamRelNode

    buildPTransform, getPipelineOptions, isBounded, withErrorsTransformer

    Methods inherited from interface org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.hint.Hintable

    attachHints, withHints

    Methods inherited from interface org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode

    accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, 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.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptNode

    getCluster, getDescription, getId, getTraitSet
  • Constructor Details

    • BeamSideInputLookupJoinRel

      public BeamSideInputLookupJoinRel(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptCluster cluster, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode left, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode right, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rex.RexNode condition, Set<org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.CorrelationId> variablesSet, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.JoinRelType joinType)
  • Method Details

    • buildPTransform

      public PTransform<PCollectionList<Row>,PCollection<Row>> buildPTransform()
    • copy

      public org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.Join copy(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rex.RexNode conditionExpr, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode left, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode right, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.JoinRelType joinType, boolean semiJoinDone)
      Specified by:
      copy in class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.core.Join