Package eu.stratosphere.compiler.operators

Examples of eu.stratosphere.compiler.operators.CrossBlockOuterFirstDescriptor


    String localStrategy = conf.getString(PactCompiler.HINT_LOCAL_STRATEGY, null);
 
    if (localStrategy != null) {
      final OperatorDescriptorDual fixedDriverStrat;
      if (PactCompiler.HINT_LOCAL_STRATEGY_NESTEDLOOP_BLOCKED_OUTER_FIRST.equals(localStrategy)) {
        fixedDriverStrat = new CrossBlockOuterFirstDescriptor(allowBCfirst, allowBCsecond);
      } else if (PactCompiler.HINT_LOCAL_STRATEGY_NESTEDLOOP_BLOCKED_OUTER_SECOND.equals(localStrategy)) {
        fixedDriverStrat = new CrossBlockOuterSecondDescriptor(allowBCfirst, allowBCsecond);
      } else if (PactCompiler.HINT_LOCAL_STRATEGY_NESTEDLOOP_STREAMED_OUTER_FIRST.equals(localStrategy)) {
        fixedDriverStrat = new CrossStreamOuterFirstDescriptor(allowBCfirst, allowBCsecond);
      } else if (PactCompiler.HINT_LOCAL_STRATEGY_NESTEDLOOP_STREAMED_OUTER_SECOND.equals(localStrategy)) {
        fixedDriverStrat = new CrossStreamOuterSecondDescriptor(allowBCfirst, allowBCsecond);
      } else {
        throw new CompilerException("Invalid local strategy hint for cross contract: " + localStrategy);
      }
     
      return Collections.singletonList(fixedDriverStrat);
    }
    else if (operation instanceof CrossOperatorBase.CrossWithSmall) {
      ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>();
      list.add(new CrossBlockOuterSecondDescriptor(false, true));
      list.add(new CrossStreamOuterFirstDescriptor(false, true));
      return list;
    }
    else if (operation instanceof CrossOperatorBase.CrossWithLarge) {
      ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>();
      list.add(new CrossBlockOuterFirstDescriptor(true, false));
      list.add(new CrossStreamOuterSecondDescriptor(true, false));
      return list;
    }
    else {
      ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>();
      list.add(new CrossBlockOuterFirstDescriptor());
      list.add(new CrossBlockOuterSecondDescriptor());
      list.add(new CrossStreamOuterFirstDescriptor());
      list.add(new CrossStreamOuterSecondDescriptor());
      return list;
    }
View Full Code Here

TOP

Related Classes of eu.stratosphere.compiler.operators.CrossBlockOuterFirstDescriptor

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.