Examples of VTuple


Examples of org.apache.tajo.storage.VTuple

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

    // for join
    frameTuple = new FrameTuple();
    outTuple = new VTuple(outSchema.getColumnNum());
    leftKeyTuple = new VTuple(leftKeyList.length);

    leftNumCols = outer.getSchema().getColumnNum();
    rightNumCols = inner.getSchema().getColumnNum();
  }
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

  protected void loadRightToHashTable() throws IOException {
    Tuple tuple;
    Tuple keyTuple;

    while ((tuple = rightChild.next()) != null) {
      keyTuple = new VTuple(joinKeyPairs.size());
      List<Tuple> newValue;
      for (int i = 0; i < rightKeyList.length; i++) {
        keyTuple.put(i, tuple.get(rightKeyList[i]));
      }
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

  public Tuple next() throws IOException {

    if (!sorted) {
      Tuple tuple;
      while ((tuple = child.next()) != null) {
        tupleSlots.add(new VTuple(tuple));
      }
     
      Collections.sort(tupleSlots, getComparator());
      this.iterator = tupleSlots.iterator();
      sorted = true;
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

    // for projection
    targetIds = RowStoreUtil.getTargetIds(inSchema, outSchema);

    // for join
    frameTuple = new FrameTuple();
    outputTuple = new VTuple(outSchema.getColumnNum());
  }
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

public class TestGeneralFunction {

  @Test
  public void testDate() {
    Date date = new Date();
    Tuple tuple = new VTuple(new Datum[] {new TextDatum("25/12/2012 00:00:00")});
    Int8Datum unixtime = (Int8Datum) date.eval(tuple);
    Calendar c = Calendar.getInstance();
    c.setTimeInMillis(unixtime.asInt8());
    assertEquals(2012, c.get(Calendar.YEAR));
    assertEquals(11, c.get(Calendar.MONTH));
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

  public void tearDown() throws Exception {
  }

  @Test
  public final void testGetPartition() {  
    Tuple tuple1 = new VTuple(3);   
    tuple1.put(new Datum[] {
        DatumFactory.createInt4(1),
        DatumFactory.createInt4(2),
        DatumFactory.createInt4(3)
    });
    Tuple tuple2 = new VTuple(3);   
    tuple2.put(new Datum[] {
        DatumFactory.createInt4(1),
        DatumFactory.createInt4(2),
        DatumFactory.createInt4(4)
    });
    Tuple tuple3 = new VTuple(3);   
    tuple3.put(new Datum[] {
        DatumFactory.createInt4(1),
        DatumFactory.createInt4(2),
        DatumFactory.createInt4(5)
    });
    Tuple tuple4 = new VTuple(3);   
    tuple4.put(new Datum[] {
        DatumFactory.createInt4(2),
        DatumFactory.createInt4(2),
        DatumFactory.createInt4(3)
    });
    Tuple tuple5 = new VTuple(3);   
    tuple5.put(new Datum[] {
        DatumFactory.createInt4(2),
        DatumFactory.createInt4(2),
        DatumFactory.createInt4(4)
    });
   
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

    testEval(null, null, null, query, expected);
  }

  public void testEval(Schema schema, String tableName, String csvTuple, String query, String [] expected) throws IOException {
    LazyTuple lazyTuple;
    VTuple vtuple  = null;
    Schema inputSchema = null;
    if (schema != null) {
      inputSchema = (Schema) schema.clone();
      inputSchema.setQualifier(tableName, true);

      int targetIdx [] = new int[inputSchema.getColumnNum()];
      for (int i = 0; i < targetIdx.length; i++) {
        targetIdx[i] = i;
      }

      lazyTuple = new LazyTuple(inputSchema, Bytes.splitPreserveAllTokens(csvTuple.getBytes(), ',', targetIdx), 0);
      vtuple = new VTuple(inputSchema.getColumnNum());
      for (int i = 0; i < inputSchema.getColumnNum(); i++) {
        // If null value occurs, null datum is manually inserted to an input tuple.
        if (lazyTuple.get(i) instanceof TextDatum && lazyTuple.getText(i).asChars().equals("")) {
          vtuple.put(i, NullDatum.get());
        } else {
          vtuple.put(i, lazyTuple.get(i));
        }
      }
      cat.addTable(new TableDescImpl(tableName, inputSchema, CatalogProtos.StoreType.CSV, new Options(), CommonTestingUtil.getTestDir()));
    }

    Target [] targets = null;

    try {
      targets = getRawTargets(query);
    } catch (PlanningException e) {
      assertTrue("Wrong query statement: " + query, false);
    }

    EvalContext [] evalContexts = new EvalContext[targets.length];
    Tuple outTuple = new VTuple(targets.length);
    for (int i = 0; i < targets.length; i++) {
      EvalNode eval = targets[i].getEvalTree();
      evalContexts[i] = eval.newContext();
      eval.eval(evalContexts[i], inputSchema, vtuple);
      outTuple.put(i, eval.terminate(evalContexts[i]));
    }

    if (schema != null) {
      cat.deleteTable(tableName);
    }

    for (int i = 0; i < expected.length; i++) {
      assertEquals(query, expected[i], outTuple.get(i).asChars());
    }
  }
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

    FieldEval f4 = new FieldEval("people.fid2", CatalogUtil.newSimpleDataType(Type.INT4));

    EvalNode joinQual = new BinaryEval(EvalType.EQUAL, f1, f2);
    TupleComparator [] comparators = PlannerUtil.getComparatorsFromJoinQual(joinQual, outerSchema, innerSchema);

    Tuple t1 = new VTuple(2);
    t1.put(0, DatumFactory.createInt4(1));
    t1.put(1, DatumFactory.createInt4(2));

    Tuple t2 = new VTuple(2);
    t2.put(0, DatumFactory.createInt4(2));
    t2.put(1, DatumFactory.createInt4(3));

    TupleComparator outerComparator = comparators[0];
    assertTrue(outerComparator.compare(t1, t2) < 0);
    assertTrue(outerComparator.compare(t2, t1) > 0);
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

    cat.createFunction(funcMeta);

    analyzer = new SQLAnalyzer();
    planner = new LogicalPlanner(cat);
   
    tuples[0] = new VTuple(3);
    tuples[0].put(new Datum[] {
        DatumFactory.createText("aabc"),
        DatumFactory.createInt4(100),
        DatumFactory.createInt4(10)});
    tuples[1] = new VTuple(3);
    tuples[1].put(new Datum[] {
        DatumFactory.createText("aaba"),
        DatumFactory.createInt4(200),
        DatumFactory.createInt4(20)});
    tuples[2] = new VTuple(3);
    tuples[2].put(new Datum[] {
        DatumFactory.createText("kabc"),
        DatumFactory.createInt4(300),
        DatumFactory.createInt4(30)});
  }
View Full Code Here

Examples of org.apache.tajo.storage.VTuple

    return qual;
  }

  @Test
  public final void testFunctionEval() throws Exception {   
    Tuple tuple = new VTuple(3);
    tuple.put(
        new Datum[] {
          DatumFactory.createText("hyunsik"),
          DatumFactory.createInt4(500),
          DatumFactory.createInt4(30)});

    EvalNode expr;

    Schema peopleSchema = cat.getTableDesc("people").getMeta().getSchema();
    EvalContext evalCtx;
    expr = getRootSelection(QUERIES[0]);
    evalCtx = expr.newContext();
    expr.eval(evalCtx, peopleSchema, tuple);
    assertEquals(true, expr.terminate(evalCtx).asBool());

    expr = getRootSelection(QUERIES[1]);
    evalCtx = expr.newContext();
    expr.eval(evalCtx, peopleSchema, tuple);
    assertEquals(15000, expr.terminate(evalCtx).asInt4());
    assertCloneEqual(expr);

    expr = getRootSelection(QUERIES[2]);
    evalCtx = expr.newContext();
    expr.eval(evalCtx, peopleSchema, tuple);
    assertEquals(15050, expr.terminate(evalCtx).asInt4());
    assertCloneEqual(expr);
   
    // Aggregation function test
    expr = getRawTargets(QUERIES[4])[0].getEvalTree();
    evalCtx = expr.newContext();
   
    final int tuplenum = 10;
    Tuple [] tuples = new Tuple[tuplenum];
    for (int i=0; i < tuplenum; i++) {
      tuples[i] = new VTuple(3);
      tuples[i].put(0, DatumFactory.createText("hyunsik"));
      tuples[i].put(1, DatumFactory.createInt4(i + 1));
      tuples[i].put(2, DatumFactory.createInt4(30));
    }
   
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.