Package org.apache.flink.compiler.operators

Examples of org.apache.flink.compiler.operators.HashJoinBuildSecondProperties


  public void makeJoinWithSolutionSet(int solutionsetInputIndex) {
    OperatorDescriptorDual op;
    if (solutionsetInputIndex == 0) {
      op = new HashJoinBuildFirstProperties(this.keys1, this.keys2);
    } else if (solutionsetInputIndex == 1) {
      op = new HashJoinBuildSecondProperties(this.keys1, this.keys2);
    } else {
      throw new IllegalArgumentException();
    }
   
    this.dataProperties = Collections.singletonList(op);
View Full Code Here


      {
        fixedDriverStrat = new SortMergeJoinDescriptor(this.keys1, this.keys2);
      } else if (PactCompiler.HINT_LOCAL_STRATEGY_HASH_BUILD_FIRST.equals(localStrategy)) {
        fixedDriverStrat = new HashJoinBuildFirstProperties(this.keys1, this.keys2);
      } else if (PactCompiler.HINT_LOCAL_STRATEGY_HASH_BUILD_SECOND.equals(localStrategy)) {
        fixedDriverStrat = new HashJoinBuildSecondProperties(this.keys1, this.keys2);
      } else {
        throw new CompilerException("Invalid local strategy hint for match contract: " + localStrategy);
      }
      ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>();
      list.add(fixedDriverStrat);
      return list;
    }
    else {
      ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>();
     
      joinHint = joinHint == null ? JoinHint.OPTIMIZER_CHOOSES : joinHint;
     
      switch (joinHint) {
        case BROADCAST_HASH_FIRST:
          list.add(new HashJoinBuildFirstProperties(this.keys1, this.keys2, true, false, false));
          break;
        case BROADCAST_HASH_SECOND:
          list.add(new HashJoinBuildSecondProperties(this.keys1, this.keys2, false, true, false));
          break;
        case REPARTITION_HASH_FIRST:
          list.add(new HashJoinBuildFirstProperties(this.keys1, this.keys2, false, false, true));
          break;
        case REPARTITION_HASH_SECOND:
          list.add(new HashJoinBuildSecondProperties(this.keys1, this.keys2, false, false, true));
          break;
        case REPARTITION_SORT_MERGE:
          list.add(new SortMergeJoinDescriptor(this.keys1, this.keys2, false, false, true));
          break;
        case OPTIMIZER_CHOOSES:
          list.add(new SortMergeJoinDescriptor(this.keys1, this.keys2));
          list.add(new HashJoinBuildFirstProperties(this.keys1, this.keys2));
          list.add(new HashJoinBuildSecondProperties(this.keys1, this.keys2));
          break;
        default:
          throw new CompilerException("Unrecognized join hint: " + joinHint);
      }
     
View Full Code Here

TOP

Related Classes of org.apache.flink.compiler.operators.HashJoinBuildSecondProperties

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.