public class AggregateNode extends AbstractSingleNode<Aggregate>
Aggregate.| Modifier and Type | Class and Description |
|---|---|
private static interface |
AggregateNode.Accumulator
Defines function implementation for
things like
count() and sum(). |
private static interface |
AggregateNode.AccumulatorFactory
Creates an
AggregateNode.Accumulator. |
private static class |
AggregateNode.AccumulatorList
A list of accumulators used during grouping.
|
private static class |
AggregateNode.CountAccumulator
Accumulator for calls to the COUNT function.
|
static class |
AggregateNode.DoubleSum
Implementation of
SUM over DOUBLE values as a user-defined
aggregate. |
private static class |
AggregateNode.FilterAccumulator
Accumulator that applies a filter to another accumulator.
|
private class |
AggregateNode.Grouping
Internal class to track groupings.
|
static class |
AggregateNode.IntSum
Implementation of
SUM over INTEGER values as a user-defined
aggregate. |
static class |
AggregateNode.LongSum
Implementation of
SUM over BIGINT values as a user-defined
aggregate. |
private static class |
AggregateNode.ScalarAccumulator
Accumulator powered by
Scalar code fragments. |
private static class |
AggregateNode.ScalarAccumulatorDef
Accumulator powered by
Scalar code fragments. |
private static class |
AggregateNode.UdaAccumulator
Accumulator based upon a user-defined aggregate.
|
private static class |
AggregateNode.UdaAccumulatorFactory
Accumulator factory based on a user-defined aggregate function.
|
| Modifier and Type | Field and Description |
|---|---|
private com.google.common.collect.ImmutableList<AggregateNode.AccumulatorFactory> |
accumulatorFactories |
private DataContext |
dataContext |
private List<AggregateNode.Grouping> |
groups |
private int |
outputRowLength |
private ImmutableBitSet |
unionGroups |
rel, sink, source| Constructor and Description |
|---|
AggregateNode(Compiler compiler,
Aggregate rel) |
| Modifier and Type | Method and Description |
|---|---|
private AggregateNode.AccumulatorFactory |
getAccumulator(AggregateCall call,
boolean ignoreFilter) |
void |
run() |
private final List<AggregateNode.Grouping> groups
private final ImmutableBitSet unionGroups
private final int outputRowLength
private final com.google.common.collect.ImmutableList<AggregateNode.AccumulatorFactory> accumulatorFactories
private final DataContext dataContext
public void run()
throws InterruptedException
InterruptedExceptionprivate AggregateNode.AccumulatorFactory getAccumulator(AggregateCall call, boolean ignoreFilter)
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.