Examples of DualInputPlanNode


Examples of org.apache.flink.compiler.plan.DualInputPlanNode

      public boolean preVisit(PlanNode visitable) {
        if (visitable instanceof WorksetIterationPlanNode) {
          PlanNode deltaNode = ((WorksetIterationPlanNode) visitable).getSolutionSetDeltaPlanNode();

          //get the CoGroup
          DualInputPlanNode dpn = (DualInputPlanNode) deltaNode.getInputs().iterator().next().getSource();
          Channel in1 = dpn.getInput1();
          Channel in2 = dpn.getInput2();

          Assert.assertTrue(in1.getLocalProperties().getOrdering() == null);
          Assert.assertTrue(in2.getLocalProperties().getOrdering() != null);
          Assert.assertTrue(in2.getLocalProperties().getOrdering().getInvolvedIndexes().contains(0));
          Assert.assertTrue(in1.getShipStrategy() == ShipStrategyType.FORWARD);
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

      boolean[] tmp = new boolean[this.keys1.size()];
      System.arraycopy(inputOrders, 0, tmp, 0, tmp.length);
      inputOrders = tmp;
    }
   
    return new DualInputPlanNode(node, "CoGroup ("+node.getPactContract().getName()+")", in1, in2, DriverStrategy.CO_GROUP, this.keys1, this.keys2, inputOrders);
  }
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

        // this represents an access into the solution set index.
        // we do not create a vertex for the solution set here (we create the head at the workset place holder)
       
        // we adjust the joins / cogroups that go into the solution set here
        for (Channel c : node.getOutgoingChannels()) {
          DualInputPlanNode target = (DualInputPlanNode) c.getTarget();
          AbstractJobVertex accessingVertex = this.vertices.get(target);
          TaskConfig conf = new TaskConfig(accessingVertex.getConfiguration());
          int inputNum = c == target.getInput1() ? 0 : c == target.getInput2() ? 1 : -1;
         
          // sanity checks
          if (inputNum == -1) {
            throw new CompilerException();
          }
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

      strategy = DriverStrategy.HYBRIDHASH_BUILD_FIRST_CACHED;
    }
    else {
      strategy = DriverStrategy.HYBRIDHASH_BUILD_FIRST;
    }
    return new DualInputPlanNode(node, "Join("+node.getPactContract().getName()+")", in1, in2, strategy, this.keys1, this.keys2);
  }
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

      // get the nodes from the final plan
      final SinkPlanNode sink = or.getNode("Output");
      final SingleInputPlanNode reducer = or.getNode("AggLio");
      final SingleInputPlanNode combiner = reducer.getPredecessor() instanceof SingleInputPlanNode ?
          (SingleInputPlanNode) reducer.getPredecessor() : null;
      final DualInputPlanNode join = or.getNode("JoinLiO");
      final SingleInputPlanNode filteringMapper = or.getNode("FilterO");
     
      // verify the optimizer choices
      checkStandardStrategies(filteringMapper, join, combiner, reducer, sink);
      Assert.assertTrue(checkRepartitionShipStrategies(join, reducer, combiner));
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

      // get the nodes from the final plan
      final SinkPlanNode sink = or.getNode("Output");
      final SingleInputPlanNode reducer = or.getNode("AggLio");
      final SingleInputPlanNode combiner = reducer.getPredecessor() instanceof SingleInputPlanNode ?
          (SingleInputPlanNode) reducer.getPredecessor() : null;
      final DualInputPlanNode join = or.getNode("JoinLiO");
      final SingleInputPlanNode filteringMapper = or.getNode("FilterO");
     
      checkStandardStrategies(filteringMapper, join, combiner, reducer, sink);
     
      // check the possible variants and that the variant ia allowed in this specific setting
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

    return true;
  }
 
  @Override
  public DualInputPlanNode instantiate(Channel in1, Channel in2, TwoInputNode node) {
    return new DualInputPlanNode(node, "Cross("+node.getPactContract().getName()+")", in1, in2, getStrategy());
  }
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

        continue;
      }
     
      placePipelineBreakersIfNecessary(operator.getStrategy(), in1, in2);
     
      DualInputPlanNode node = operator.instantiate(in1, in2, this);
      node.setBroadcastInputs(broadcastChannelsCombination);
     
      GlobalProperties gp1 = in1.getGlobalProperties().clone().filterByNodesConstantSet(this, 0);
      GlobalProperties gp2 = in2.getGlobalProperties().clone().filterByNodesConstantSet(this, 1);
      GlobalProperties combined = operator.computeGlobalProperties(gp1, gp2);

      LocalProperties lp1 = in1.getLocalProperties().clone().filterByNodesConstantSet(this, 0);
      LocalProperties lp2 = in2.getLocalProperties().clone().filterByNodesConstantSet(this, 1);
      LocalProperties locals = operator.computeLocalProperties(lp1, lp2);
     
      node.initProperties(combined, locals);
      node.updatePropertiesWithUniqueSets(getUniqueFields());
      target.add(node);
    }
  }
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

      strategy = DriverStrategy.HYBRIDHASH_BUILD_SECOND_CACHED;
    }
    else {
      strategy = DriverStrategy.HYBRIDHASH_BUILD_SECOND;
    }
    return new DualInputPlanNode(node, "Join ("+node.getPactContract().getName()+")", in1, in2, strategy, this.keys1, this.keys2);
  }
View Full Code Here

Examples of org.apache.flink.compiler.plan.DualInputPlanNode

      boolean[] tmp = new boolean[this.keys1.size()];
      System.arraycopy(inputOrders, 0, tmp, 0, tmp.length);
      inputOrders = tmp;
    }
   
    return new DualInputPlanNode(node, "Join("+node.getPactContract().getName()+")", in1, in2, DriverStrategy.MERGE, this.keys1, this.keys2, inputOrders);
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.