Search in sources :

Example 1 with AggregateOperator

use of io.dingodb.exec.operator.AggregateOperator in project dingo by dingodb.

the class DingoJobVisitor method visit.

@Override
public Collection<Output> visit(@Nonnull DingoAggregate rel) {
    Collection<Output> inputs = dingo(rel.getInput()).accept(this);
    List<Output> outputs = new LinkedList<>();
    for (Output input : inputs) {
        Operator operator = new AggregateOperator(rel.getKeys(), rel.getAggList());
        Task task = input.getTask();
        operator.setId(idGenerator.get());
        task.putOperator(operator);
        input.setLink(operator.getInput(0));
        outputs.addAll(operator.getOutputs());
    }
    return outputs;
}
Also used : SumUpOperator(io.dingodb.exec.operator.SumUpOperator) AggregateOperator(io.dingodb.exec.operator.AggregateOperator) SortOperator(io.dingodb.exec.operator.SortOperator) RootOperator(io.dingodb.exec.operator.RootOperator) PartScanOperator(io.dingodb.exec.operator.PartScanOperator) SendOperator(io.dingodb.exec.operator.SendOperator) ReceiveOperator(io.dingodb.exec.operator.ReceiveOperator) ProjectOperator(io.dingodb.exec.operator.ProjectOperator) ValuesOperator(io.dingodb.exec.operator.ValuesOperator) PartUpdateOperator(io.dingodb.exec.operator.PartUpdateOperator) ReduceOperator(io.dingodb.exec.operator.ReduceOperator) Operator(io.dingodb.exec.base.Operator) GetByKeysOperator(io.dingodb.exec.operator.GetByKeysOperator) PartitionOperator(io.dingodb.exec.operator.PartitionOperator) PartDeleteOperator(io.dingodb.exec.operator.PartDeleteOperator) PartInsertOperator(io.dingodb.exec.operator.PartInsertOperator) CoalesceOperator(io.dingodb.exec.operator.CoalesceOperator) Task(io.dingodb.exec.base.Task) Output(io.dingodb.exec.base.Output) AggregateOperator(io.dingodb.exec.operator.AggregateOperator) LinkedList(java.util.LinkedList)

Aggregations

Operator (io.dingodb.exec.base.Operator)1 Output (io.dingodb.exec.base.Output)1 Task (io.dingodb.exec.base.Task)1 AggregateOperator (io.dingodb.exec.operator.AggregateOperator)1 CoalesceOperator (io.dingodb.exec.operator.CoalesceOperator)1 GetByKeysOperator (io.dingodb.exec.operator.GetByKeysOperator)1 PartDeleteOperator (io.dingodb.exec.operator.PartDeleteOperator)1 PartInsertOperator (io.dingodb.exec.operator.PartInsertOperator)1 PartScanOperator (io.dingodb.exec.operator.PartScanOperator)1 PartUpdateOperator (io.dingodb.exec.operator.PartUpdateOperator)1 PartitionOperator (io.dingodb.exec.operator.PartitionOperator)1 ProjectOperator (io.dingodb.exec.operator.ProjectOperator)1 ReceiveOperator (io.dingodb.exec.operator.ReceiveOperator)1 ReduceOperator (io.dingodb.exec.operator.ReduceOperator)1 RootOperator (io.dingodb.exec.operator.RootOperator)1 SendOperator (io.dingodb.exec.operator.SendOperator)1 SortOperator (io.dingodb.exec.operator.SortOperator)1 SumUpOperator (io.dingodb.exec.operator.SumUpOperator)1 ValuesOperator (io.dingodb.exec.operator.ValuesOperator)1 LinkedList (java.util.LinkedList)1