Class AdaptiveJoinOperatorGenerator

java.lang.Object
org.apache.flink.table.planner.adaptive.AdaptiveJoinOperatorGenerator
All Implemented Interfaces:
Serializable, org.apache.flink.table.runtime.operators.join.adaptive.AdaptiveJoin

public class AdaptiveJoinOperatorGenerator extends Object implements org.apache.flink.table.runtime.operators.join.adaptive.AdaptiveJoin
Implementation class for AdaptiveJoin. It can selectively generate broadcast hash join, shuffle hash join or shuffle merge join operator based on actual conditions.
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    AdaptiveJoinOperatorGenerator(int[] leftKeys, int[] rightKeys, org.apache.flink.table.runtime.operators.join.FlinkJoinType joinType, boolean[] filterNulls, org.apache.flink.table.types.logical.RowType leftType, org.apache.flink.table.types.logical.RowType rightType, org.apache.flink.table.runtime.generated.GeneratedJoinCondition condFunc, int leftRowSize, int rightRowSize, long leftRowCount, long rightRowCount, boolean tryDistinctBuildRow, long managedMemory, boolean leftIsBuild, OperatorType originalJoin)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.flink.streaming.api.operators.StreamOperatorFactory<?>
    genOperatorFactory(ClassLoader classLoader, org.apache.flink.configuration.ReadableConfig config)
     
    org.apache.flink.table.runtime.operators.join.FlinkJoinType
     
    void
    markAsBroadcastJoin(boolean canBroadcast, boolean leftIsBuild)
     
    boolean
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • AdaptiveJoinOperatorGenerator

      public AdaptiveJoinOperatorGenerator(int[] leftKeys, int[] rightKeys, org.apache.flink.table.runtime.operators.join.FlinkJoinType joinType, boolean[] filterNulls, org.apache.flink.table.types.logical.RowType leftType, org.apache.flink.table.types.logical.RowType rightType, org.apache.flink.table.runtime.generated.GeneratedJoinCondition condFunc, int leftRowSize, int rightRowSize, long leftRowCount, long rightRowCount, boolean tryDistinctBuildRow, long managedMemory, boolean leftIsBuild, OperatorType originalJoin)
  • Method Details

    • genOperatorFactory

      public org.apache.flink.streaming.api.operators.StreamOperatorFactory<?> genOperatorFactory(ClassLoader classLoader, org.apache.flink.configuration.ReadableConfig config)
      Specified by:
      genOperatorFactory in interface org.apache.flink.table.runtime.operators.join.adaptive.AdaptiveJoin
    • getJoinType

      public org.apache.flink.table.runtime.operators.join.FlinkJoinType getJoinType()
      Specified by:
      getJoinType in interface org.apache.flink.table.runtime.operators.join.adaptive.AdaptiveJoin
    • markAsBroadcastJoin

      public void markAsBroadcastJoin(boolean canBroadcast, boolean leftIsBuild)
      Specified by:
      markAsBroadcastJoin in interface org.apache.flink.table.runtime.operators.join.adaptive.AdaptiveJoin
    • shouldReorderInputs

      public boolean shouldReorderInputs()
      Specified by:
      shouldReorderInputs in interface org.apache.flink.table.runtime.operators.join.adaptive.AdaptiveJoin