當前位置: 首頁>>代碼示例>>Java>>正文


Java JoinNode.getInSchema方法代碼示例

本文整理匯總了Java中org.apache.tajo.engine.planner.logical.JoinNode.getInSchema方法的典型用法代碼示例。如果您正苦於以下問題:Java JoinNode.getInSchema方法的具體用法?Java JoinNode.getInSchema怎麽用?Java JoinNode.getInSchema使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.tajo.engine.planner.logical.JoinNode的用法示例。


在下文中一共展示了JoinNode.getInSchema方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: NLLeftOuterJoinExec

import org.apache.tajo.engine.planner.logical.JoinNode; //導入方法依賴的package包/類
public NLLeftOuterJoinExec(TaskAttemptContext context, JoinNode plan, PhysicalExec leftChild,
                           PhysicalExec rightChild) {
  super(context, plan.getInSchema(), plan.getOutSchema(), leftChild, rightChild);
  this.plan = plan;

  if (plan.hasJoinQual()) {
    this.joinQual = plan.getJoinQual();
  }

  // for projection
  projector = new Projector(inSchema, outSchema, plan.getTargets());

  // for join
  needNextRightTuple = true;
  frameTuple = new FrameTuple();
  outTuple = new VTuple(outSchema.size());

  foundAtLeastOneMatch = false;
  rightNumCols = rightChild.getSchema().size();
}
 
開發者ID:apache,項目名稱:incubator-tajo,代碼行數:21,代碼來源:NLLeftOuterJoinExec.java

示例2: NLJoinExec

import org.apache.tajo.engine.planner.logical.JoinNode; //導入方法依賴的package包/類
public NLJoinExec(TaskAttemptContext context, JoinNode plan, PhysicalExec outer,
    PhysicalExec inner) {
  super(context, plan.getInSchema(), plan.getOutSchema(), outer, inner);
  this.plan = plan;

  if (plan.hasJoinQual()) {
    this.joinQual = plan.getJoinQual();
  }

  // for projection
  projector = new Projector(inSchema, outSchema, plan.getTargets());

  // for join
  needNewOuter = true;
  frameTuple = new FrameTuple();
  outTuple = new VTuple(outSchema.size());
}
 
開發者ID:apache,項目名稱:incubator-tajo,代碼行數:18,代碼來源:NLJoinExec.java

示例3: MergeFullOuterJoinExec

import org.apache.tajo.engine.planner.logical.JoinNode; //導入方法依賴的package包/類
public MergeFullOuterJoinExec(TaskAttemptContext context, JoinNode plan, PhysicalExec leftChild,
                              PhysicalExec rightChild, SortSpec[] leftSortKey, SortSpec[] rightSortKey) {
  super(context, plan.getInSchema(), plan.getOutSchema(), leftChild, rightChild);
  Preconditions.checkArgument(plan.hasJoinQual(), "Sort-merge join is only used for the equi-join, " +
      "but there is no join condition");
  this.joinNode = plan;
  this.joinQual = plan.getJoinQual();

  this.leftTupleSlots = new ArrayList<Tuple>(INITIAL_TUPLE_SLOT);
  this.rightTupleSlots = new ArrayList<Tuple>(INITIAL_TUPLE_SLOT);
  SortSpec[][] sortSpecs = new SortSpec[2][];
  sortSpecs[0] = leftSortKey;
  sortSpecs[1] = rightSortKey;

  this.joincomparator = new JoinTupleComparator(leftChild.getSchema(),
      rightChild.getSchema(), sortSpecs);
  this.tupleComparator = PlannerUtil.getComparatorsFromJoinQual(
      plan.getJoinQual(), leftChild.getSchema(), rightChild.getSchema());

  // for projection
  this.projector = new Projector(inSchema, outSchema, plan.getTargets());

  // for join
  frameTuple = new FrameTuple();
  outTuple = new VTuple(outSchema.size());

  leftNumCols = leftChild.getSchema().size();
  rightNumCols = rightChild.getSchema().size();
}
 
開發者ID:apache,項目名稱:incubator-tajo,代碼行數:30,代碼來源:MergeFullOuterJoinExec.java

示例4: RightOuterMergeJoinExec

import org.apache.tajo.engine.planner.logical.JoinNode; //導入方法依賴的package包/類
public RightOuterMergeJoinExec(TaskAttemptContext context, JoinNode plan, PhysicalExec outer,
                               PhysicalExec inner, SortSpec[] outerSortKey, SortSpec[] innerSortKey) {
  super(context, plan.getInSchema(), plan.getOutSchema(), outer, inner);
  Preconditions.checkArgument(plan.hasJoinQual(), "Sort-merge join is only used for the equi-join, " +
      "but there is no join condition");
  this.joinNode = plan;
  this.joinQual = plan.getJoinQual();

  this.leftTupleSlots = new ArrayList<Tuple>(INITIAL_TUPLE_SLOT);
  this.innerTupleSlots = new ArrayList<Tuple>(INITIAL_TUPLE_SLOT);
  SortSpec[][] sortSpecs = new SortSpec[2][];
  sortSpecs[0] = outerSortKey;
  sortSpecs[1] = innerSortKey;

  this.joinComparator = new JoinTupleComparator(outer.getSchema(), inner.getSchema(), sortSpecs);
  this.tupleComparator = PlannerUtil.getComparatorsFromJoinQual(
      plan.getJoinQual(), outer.getSchema(), inner.getSchema());

  // for projection
  this.projector = new Projector(inSchema, outSchema, plan.getTargets());

  // for join
  frameTuple = new FrameTuple();
  outTuple = new VTuple(outSchema.size());

  leftNumCols = outer.getSchema().size();
}
 
開發者ID:apache,項目名稱:incubator-tajo,代碼行數:28,代碼來源:RightOuterMergeJoinExec.java

示例5: BNLJoinExec

import org.apache.tajo.engine.planner.logical.JoinNode; //導入方法依賴的package包/類
public BNLJoinExec(final TaskAttemptContext context, final JoinNode plan,
                   final PhysicalExec leftExec, PhysicalExec rightExec) {
  super(context, plan.getInSchema(), plan.getOutSchema(), leftExec, rightExec);
  this.plan = plan;
  this.joinQual = plan.getJoinQual();
  if (joinQual != null) { // if join type is not 'cross join'
    hasJoinQual = true;
  } else {
    hasJoinQual = false;
  }
  this.leftTupleSlots = new ArrayList<Tuple>(TUPLE_SLOT_SIZE);
  this.rightTupleSlots = new ArrayList<Tuple>(TUPLE_SLOT_SIZE);
  this.leftIterator = leftTupleSlots.iterator();
  this.rightIterator = rightTupleSlots.iterator();
  this.rightEnd = false;
  this.leftEnd = false;

  // for projection
  if (!plan.hasTargets()) {
    plan.setTargets(PlannerUtil.schemaToTargets(outSchema));
  }

  projector = new Projector(inSchema, outSchema, plan.getTargets());

  // for join
  frameTuple = new FrameTuple();
  outputTuple = new VTuple(outSchema.size());
}
 
開發者ID:apache,項目名稱:incubator-tajo,代碼行數:29,代碼來源:BNLJoinExec.java

示例6: MergeJoinExec

import org.apache.tajo.engine.planner.logical.JoinNode; //導入方法依賴的package包/類
public MergeJoinExec(TaskAttemptContext context, JoinNode plan, PhysicalExec outer,
    PhysicalExec inner, SortSpec[] outerSortKey, SortSpec[] innerSortKey) {
  super(context, plan.getInSchema(), plan.getOutSchema(), outer, inner);
  Preconditions.checkArgument(plan.hasJoinQual(), "Sort-merge join is only used for the equi-join, " +
      "but there is no join condition");
  this.joinNode = plan;
  this.joinQual = plan.getJoinQual();

  this.outerTupleSlots = new ArrayList<Tuple>(INITIAL_TUPLE_SLOT);
  this.innerTupleSlots = new ArrayList<Tuple>(INITIAL_TUPLE_SLOT);
  SortSpec[][] sortSpecs = new SortSpec[2][];
  sortSpecs[0] = outerSortKey;
  sortSpecs[1] = innerSortKey;

  this.joincomparator = new JoinTupleComparator(outer.getSchema(),
      inner.getSchema(), sortSpecs);
  this.tupleComparator = PlannerUtil.getComparatorsFromJoinQual(
      plan.getJoinQual(), outer.getSchema(), inner.getSchema());
  this.outerIterator = outerTupleSlots.iterator();
  this.innerIterator = innerTupleSlots.iterator();
  
  // for projection
  this.projector = new Projector(inSchema, outSchema, plan.getTargets());

  // for join
  frameTuple = new FrameTuple();
  outTuple = new VTuple(outSchema.size());
}
 
開發者ID:apache,項目名稱:incubator-tajo,代碼行數:29,代碼來源:MergeJoinExec.java


注:本文中的org.apache.tajo.engine.planner.logical.JoinNode.getInSchema方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。