Packages

package aggregate

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. case class AggregateExpression(aggregateFunction: AggregateFunction, mode: AggregateMode, isDistinct: Boolean, filter: Option[Expression], resultId: ExprId) extends Expression with Unevaluable with scala.Product with Serializable

    A container for an AggregateFunction with its AggregateMode and a field (isDistinct) indicating if DISTINCT keyword is specified for this function and a field (filter) indicating if filter clause is specified for this function.

  2. abstract class AggregateFunction extends Expression

    AggregateFunction is the superclass of two aggregation function interfaces:

    AggregateFunction is the superclass of two aggregation function interfaces:

    • ImperativeAggregate is for aggregation functions that are specified in terms of initialize(), update(), and merge() functions that operate on Row-based aggregation buffers.
    • DeclarativeAggregate is for aggregation functions that are specified using Catalyst expressions.

    In both interfaces, aggregates must define the schema (aggBufferSchema) and attributes (aggBufferAttributes) of an aggregation buffer which is used to hold partial aggregate results. At runtime, multiple aggregate functions are evaluated by the same operator using a combined aggregation buffer which concatenates the aggregation buffers of the individual aggregate functions. Please note that aggregate functions should be stateless.

    Code which accepts AggregateFunction instances should be prepared to handle both types of aggregate functions.

  3. sealed trait AggregateMode extends AnyRef

    The mode of an AggregateFunction.

  4. case class ApproxCountDistinctForIntervals(child: Expression, endpointsExpression: Expression, relativeSD: Double = 0.05, mutableAggBufferOffset: Int = 0, inputAggBufferOffset: Int = 0) extends TypedImperativeAggregate[Array[Long]] with ExpectsInputTypes with BinaryLike[Expression] with scala.Product with Serializable

    This function counts the approximate number of distinct values (ndv) in intervals constructed from endpoints specified in endpointsExpression.

    This function counts the approximate number of distinct values (ndv) in intervals constructed from endpoints specified in endpointsExpression. The endpoints should be sorted into ascending order. E.g., given an array of endpoints (endpoint_1, endpoint_2, ... endpoint_N), returns the approximate ndv's for intervals [endpoint_1, endpoint_2], (endpoint_2, endpoint_3], ... (endpoint_N-1, endpoint_N]. To count ndv's in these intervals, apply the HyperLogLogPlusPlus algorithm in each of them.

    child

    to estimate the ndv's of.

    endpointsExpression

    An array expression to construct the intervals. It must be foldable, and its elements should be sorted into ascending order. Duplicate endpoints are allowed, e.g. (1, 5, 5, 10), and ndv for interval (5, 5] would be 1.

    relativeSD

    The maximum relative standard deviation allowed in the HyperLogLogPlusPlus algorithm.

  5. case class ApproximatePercentile(child: Expression, percentageExpression: Expression, accuracyExpression: Expression, mutableAggBufferOffset: Int, inputAggBufferOffset: Int) extends TypedImperativeAggregate[PercentileDigest] with ImplicitCastInputTypes with TernaryLike[Expression] with scala.Product with Serializable

    The ApproximatePercentile function returns the approximate percentile(s) of a column at the given percentage(s).

    The ApproximatePercentile function returns the approximate percentile(s) of a column at the given percentage(s). A percentile is a watermark value below which a given percentage of the column values fall. For example, the percentile of column col at percentage 50% is the median of column col.

    This function supports partial aggregation.

    child

    child expression that can produce column value with child.eval(inputRow)

    percentageExpression

    Expression that represents a single percentage value or an array of percentage values. Each percentage value must be between 0.0 and 1.0.

    accuracyExpression

    Integer literal expression of approximation accuracy. Higher value yields better accuracy, the default value is DEFAULT_PERCENTILE_ACCURACY.

    Annotations
    @ExpressionDescription()
  6. case class Average(child: Expression, useAnsiAdd: Boolean = SQLConf.get.ansiEnabled) extends AverageBase with SupportQueryContext with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  7. abstract class AverageBase extends DeclarativeAggregate with ImplicitCastInputTypes with UnaryLike[Expression]
  8. abstract class BitAggregate extends DeclarativeAggregate with ExpectsInputTypes with UnaryLike[Expression]
  9. case class BitAndAgg(child: Expression) extends BitAggregate with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  10. case class BitOrAgg(child: Expression) extends BitAggregate with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  11. case class BitXorAgg(child: Expression) extends BitAggregate with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  12. case class BloomFilterAggregate(child: Expression, estimatedNumItemsExpression: Expression, numBitsExpression: Expression, mutableAggBufferOffset: Int, inputAggBufferOffset: Int) extends TypedImperativeAggregate[BloomFilter] with TernaryLike[Expression] with scala.Product with Serializable

    An internal aggregate function that creates a Bloom filter from input values.

    An internal aggregate function that creates a Bloom filter from input values.

    child

    Child expression of Long values for creating a Bloom filter.

    estimatedNumItemsExpression

    The number of estimated distinct items (optional).

    numBitsExpression

    The number of bits to use (optional).

  13. case class BoolAnd(child: Expression) extends AggregateFunction with RuntimeReplaceableAggregate with ImplicitCastInputTypes with UnaryLike[Expression] with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  14. case class BoolOr(child: Expression) extends AggregateFunction with RuntimeReplaceableAggregate with ImplicitCastInputTypes with UnaryLike[Expression] with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  15. abstract class CentralMomentAgg extends DeclarativeAggregate with ImplicitCastInputTypes with UnaryLike[Expression]

    A central moment is the expected value of a specified power of the deviation of a random variable from the mean.

    A central moment is the expected value of a specified power of the deviation of a random variable from the mean. Central moments are often used to characterize the properties of about the shape of a distribution.

    This class implements online, one-pass algorithms for computing the central moments of a set of points.

    Behavior:

    • null values are ignored
    • returns Double.NaN when the column contains Double.NaN values

    References:

    • Xiangrui Meng. "Simpler Online Updates for Arbitrary-Order Central Moments." 2015. http://arxiv.org/abs/1510.04923
    See also

    Algorithms for calculating variance (Wikipedia)

  16. abstract class Collect[T <: Growable[Any] with Iterable[Any]] extends TypedImperativeAggregate[T] with UnaryLike[Expression]

    A base class for collect_list and collect_set aggregate functions.

    A base class for collect_list and collect_set aggregate functions.

    We have to store all the collected elements in memory, and so notice that too many elements can cause GC paused and eventually OutOfMemory Errors.

  17. case class CollectList(child: Expression, mutableAggBufferOffset: Int = 0, inputAggBufferOffset: Int = 0) extends Collect[ArrayBuffer[Any]] with scala.Product with Serializable

    Collect a list of elements.

    Collect a list of elements.

    Annotations
    @ExpressionDescription()
  18. case class CollectSet(child: Expression, mutableAggBufferOffset: Int = 0, inputAggBufferOffset: Int = 0) extends Collect[HashSet[Any]] with scala.Product with Serializable

    Collect a set of unique elements.

    Collect a set of unique elements.

    Annotations
    @ExpressionDescription()
  19. case class Corr(x: Expression, y: Expression, nullOnDivideByZero: Boolean = ...) extends PearsonCorrelation with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  20. case class Count(children: Seq[Expression]) extends DeclarativeAggregate with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  21. case class CountIf(child: Expression) extends AggregateFunction with RuntimeReplaceableAggregate with ImplicitCastInputTypes with UnaryLike[Expression] with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  22. case class CountMinSketchAgg(child: Expression, epsExpression: Expression, confidenceExpression: Expression, seedExpression: Expression, mutableAggBufferOffset: Int, inputAggBufferOffset: Int) extends TypedImperativeAggregate[CountMinSketch] with ExpectsInputTypes with QuaternaryLike[Expression] with scala.Product with Serializable

    This function returns a count-min sketch of a column with the given esp, confidence and seed.

    This function returns a count-min sketch of a column with the given esp, confidence and seed. A count-min sketch is a probabilistic data structure used for summarizing streams of data in sub-linear space, which is useful for equality predicates and join size estimation. The result returned by the function is an array of bytes, which should be deserialized to a CountMinSketch before usage.

    child

    child expression that can produce column value with child.eval(inputRow)

    epsExpression

    relative error, must be positive

    confidenceExpression

    confidence, must be positive and less than 1.0

    seedExpression

    random seed

    Annotations
    @ExpressionDescription()
  23. case class CovPopulation(left: Expression, right: Expression, nullOnDivideByZero: Boolean = ...) extends Covariance with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  24. case class CovSample(left: Expression, right: Expression, nullOnDivideByZero: Boolean = ...) extends Covariance with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  25. abstract class Covariance extends DeclarativeAggregate with ImplicitCastInputTypes with BinaryLike[Expression]

    Compute the covariance between two expressions.

    Compute the covariance between two expressions. When applied on empty data (i.e., count is zero), it returns NULL.

  26. abstract class DeclarativeAggregate extends AggregateFunction with Serializable

    API for aggregation functions that are expressed in terms of Catalyst expressions.

    API for aggregation functions that are expressed in terms of Catalyst expressions.

    When implementing a new expression-based aggregate function, start by implementing bufferAttributes, defining attributes for the fields of the mutable aggregation buffer. You can then use these attributes when defining updateExpressions, mergeExpressions, and evaluateExpressions.

    Please note that children of an aggregate function can be unresolved (it will happen when we create this function in DataFrame API). So, if there is any fields in the implemented class that need to access fields of its children, please make those fields lazy vals.

  27. case class First(child: Expression, ignoreNulls: Boolean) extends DeclarativeAggregate with ExpectsInputTypes with UnaryLike[Expression] with scala.Product with Serializable

    Returns the first value of child for a group of rows.

    Returns the first value of child for a group of rows. If the first value of child is null, it returns null (respecting nulls). Even if First is used on an already sorted column, if we do partial aggregation and final aggregation (when mergeExpression is used) its result will not be deterministic (unless the input table is sorted and has a single partition, and we use a single reducer to do the aggregation.).

    Annotations
    @ExpressionDescription()
  28. case class HistogramNumeric(child: Expression, nBins: Expression, mutableAggBufferOffset: Int, inputAggBufferOffset: Int) extends TypedImperativeAggregate[NumericHistogram] with ImplicitCastInputTypes with BinaryLike[Expression] with scala.Product with Serializable

    Computes an approximate histogram of a numerical column using a user-specified number of bins.

    Computes an approximate histogram of a numerical column using a user-specified number of bins.

    The output is an array of (x,y) pairs as struct objects that represents the histogram's bin centers and heights.

    Annotations
    @ExpressionDescription()
  29. case class HyperLogLogPlusPlus(child: Expression, relativeSD: Double = 0.05, mutableAggBufferOffset: Int = 0, inputAggBufferOffset: Int = 0) extends ImperativeAggregate with UnaryLike[Expression] with scala.Product with Serializable

    HyperLogLog++ (HLL++) is a state of the art cardinality estimation algorithm.

    HyperLogLog++ (HLL++) is a state of the art cardinality estimation algorithm. This class implements the dense version of the HLL++ algorithm as an Aggregate Function.

    This implementation has been based on the following papers: HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm http://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf

    HyperLogLog in Practice: Algorithmic Engineering of a State of The Art Cardinality Estimation Algorithm http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/pubs/archive/40671.pdf

    Appendix to HyperLogLog in Practice: Algorithmic Engineering of a State of the Art Cardinality Estimation Algorithm https://docs.google.com/document/d/1gyjfMHy43U9OWBXxfaeG-3MjGzejW1dlpyMwEYAAWEI/view?fullscreen#

    child

    to estimate the cardinality of.

    relativeSD

    the maximum relative standard deviation allowed.

    Annotations
    @ExpressionDescription()
  30. abstract class ImperativeAggregate extends AggregateFunction with CodegenFallback

    API for aggregation functions that are expressed in terms of imperative initialize(), update(), and merge() functions which operate on Row-based aggregation buffers.

    API for aggregation functions that are expressed in terms of imperative initialize(), update(), and merge() functions which operate on Row-based aggregation buffers.

    Within these functions, code should access fields of the mutable aggregation buffer by adding the bufferSchema-relative field number to mutableAggBufferOffset then using this new field number to access the buffer Row. This is necessary because this aggregation function's buffer is embedded inside of a larger shared aggregation buffer when an aggregation operator evaluates multiple aggregate functions at the same time.

    We need to perform similar field number arithmetic when merging multiple intermediate aggregate buffers together in merge() (in this case, use inputAggBufferOffset when accessing the input buffer).

    Correct ImperativeAggregate evaluation depends on the correctness of mutableAggBufferOffset and inputAggBufferOffset, but not on the correctness of the attribute ids in aggBufferAttributes and inputAggBufferAttributes.

  31. case class Kurtosis(child: Expression, nullOnDivideByZero: Boolean = ...) extends CentralMomentAgg with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  32. case class Last(child: Expression, ignoreNulls: Boolean) extends DeclarativeAggregate with ExpectsInputTypes with UnaryLike[Expression] with scala.Product with Serializable

    Returns the last value of child for a group of rows.

    Returns the last value of child for a group of rows. If the last value of child is null, it returns null (respecting nulls). Even if Last is used on an already sorted column, if we do partial aggregation and final aggregation (when mergeExpression is used) its result will not be deterministic (unless the input table is sorted and has a single partition, and we use a single reducer to do the aggregation.).

    Annotations
    @ExpressionDescription()
  33. case class Max(child: Expression) extends DeclarativeAggregate with UnaryLike[Expression] with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  34. case class MaxBy(valueExpr: Expression, orderingExpr: Expression) extends MaxMinBy with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  35. abstract class MaxMinBy extends DeclarativeAggregate with BinaryLike[Expression]

    The shared abstract superclass for MaxBy and MinBy SQL aggregate functions.

  36. case class Min(child: Expression) extends DeclarativeAggregate with UnaryLike[Expression] with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  37. case class MinBy(valueExpr: Expression, orderingExpr: Expression) extends MaxMinBy with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  38. abstract class PearsonCorrelation extends DeclarativeAggregate with ImplicitCastInputTypes with BinaryLike[Expression]

    Base class for computing Pearson correlation between two expressions.

    Base class for computing Pearson correlation between two expressions. When applied on empty data (i.e., count is zero), it returns NULL.

    Definition of Pearson correlation can be found at http://en.wikipedia.org/wiki/Pearson_product-moment_correlation_coefficient

  39. case class Percentile(child: Expression, percentageExpression: Expression, frequencyExpression: Expression, mutableAggBufferOffset: Int = 0, inputAggBufferOffset: Int = 0, reverse: Boolean = false) extends PercentileBase with TernaryLike[Expression] with scala.Product with Serializable

    The Percentile aggregate function returns the exact percentile(s) of numeric column expr at the given percentage(s) with value range in [0.0, 1.0].

    The Percentile aggregate function returns the exact percentile(s) of numeric column expr at the given percentage(s) with value range in [0.0, 1.0].

    Because the number of elements and their partial order cannot be determined in advance. Therefore we have to store all the elements in memory, and so notice that too many elements can cause GC paused and eventually OutOfMemory Errors.

    child

    child expression that produce numeric column value with child.eval(inputRow)

    percentageExpression

    Expression that represents a single percentage value or an array of percentage values. Each percentage value must be in the range [0.0, 1.0].

    Annotations
    @ExpressionDescription()
  40. abstract class PercentileBase extends TypedImperativeAggregate[OpenHashMap[AnyRef, Long]] with ImplicitCastInputTypes
  41. case class PercentileCont(left: Expression, right: Expression, reverse: Boolean = false) extends AggregateFunction with RuntimeReplaceableAggregate with ImplicitCastInputTypes with BinaryLike[Expression] with scala.Product with Serializable

    Return a percentile value based on a continuous distribution of numeric column at the given percentage (specified in ORDER BY clause).

    Return a percentile value based on a continuous distribution of numeric column at the given percentage (specified in ORDER BY clause). The value of percentage must be between 0.0 and 1.0.

  42. case class PercentileDisc(child: Expression, percentageExpression: Expression, reverse: Boolean = false, mutableAggBufferOffset: Int = 0, inputAggBufferOffset: Int = 0) extends PercentileBase with BinaryLike[Expression] with scala.Product with Serializable

    The Percentile aggregate function returns the percentile(s) based on a discrete distribution of numeric column expr at the given percentage(s) with value range in [0.0, 1.0].

    The Percentile aggregate function returns the percentile(s) based on a discrete distribution of numeric column expr at the given percentage(s) with value range in [0.0, 1.0].

    Because the number of elements and their partial order cannot be determined in advance. Therefore we have to store all the elements in memory, and so notice that too many elements can cause GC paused and eventually OutOfMemory Errors.

  43. case class PivotFirst(pivotColumn: Expression, valueColumn: Expression, pivotColumnValues: Seq[Any], mutableAggBufferOffset: Int = 0, inputAggBufferOffset: Int = 0) extends ImperativeAggregate with BinaryLike[Expression] with scala.Product with Serializable

    PivotFirst is an aggregate function used in the second phase of a two phase pivot to do the required rearrangement of values into pivoted form.

    PivotFirst is an aggregate function used in the second phase of a two phase pivot to do the required rearrangement of values into pivoted form.

    For example on an input of A | B --+-- x | 1 y | 2 z | 3

    with pivotColumn=A, valueColumn=B, and pivotColumnValues=[z,y] the output is [3,2].

    pivotColumn

    column that determines which output position to put valueColumn in.

    valueColumn

    the column that is being rearranged.

    pivotColumnValues

    the list of pivotColumn values in the order of desired output. Values not listed here will be ignored.

  44. case class Product(child: Expression) extends DeclarativeAggregate with ImplicitCastInputTypes with UnaryLike[Expression] with scala.Product with Serializable

    Multiply numerical values within an aggregation group

  45. case class RegrAvgX(left: Expression, right: Expression) extends AggregateFunction with RuntimeReplaceableAggregate with ImplicitCastInputTypes with BinaryLike[Expression] with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  46. case class RegrAvgY(left: Expression, right: Expression) extends AggregateFunction with RuntimeReplaceableAggregate with ImplicitCastInputTypes with BinaryLike[Expression] with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  47. case class RegrCount(left: Expression, right: Expression) extends AggregateFunction with RuntimeReplaceableAggregate with ImplicitCastInputTypes with BinaryLike[Expression] with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  48. case class RegrR2(x: Expression, y: Expression) extends PearsonCorrelation with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  49. case class Skewness(child: Expression, nullOnDivideByZero: Boolean = ...) extends CentralMomentAgg with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  50. case class StddevPop(child: Expression, nullOnDivideByZero: Boolean = ...) extends CentralMomentAgg with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  51. case class StddevSamp(child: Expression, nullOnDivideByZero: Boolean = ...) extends CentralMomentAgg with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  52. case class Sum(child: Expression, useAnsiAdd: Boolean = SQLConf.get.ansiEnabled) extends SumBase with SupportQueryContext with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  53. abstract class SumBase extends DeclarativeAggregate with ImplicitCastInputTypes with UnaryLike[Expression]
  54. case class TryAverage(child: Expression) extends AverageBase with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  55. case class TrySum(child: Expression) extends SumBase with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  56. abstract class TypedImperativeAggregate[T] extends ImperativeAggregate

    Aggregation function which allows **arbitrary** user-defined java object to be used as internal aggregation buffer.

    Aggregation function which allows **arbitrary** user-defined java object to be used as internal aggregation buffer.

    aggregation buffer for normal aggregation function `avg`            aggregate buffer for `sum`
              |                                                                  |
              v                                                                  v
            +--------------+---------------+-----------------------------------+-------------+
            |  sum1 (Long) | count1 (Long) | generic user-defined java objects | sum2 (Long) |
            +--------------+---------------+-----------------------------------+-------------+
                                             ^
                                             |
              aggregation buffer object for `TypedImperativeAggregate` aggregation function

    General work flow:

    Stage 1: initialize aggregate buffer object.

    1. The framework calls initialize(buffer: MutableRow) to set up the empty aggregate buffer. 2. In initialize, we call createAggregationBuffer(): T to get the initial buffer object, and set it to the global buffer row.

    Stage 2: process input rows.

    If the aggregate mode is Partial or Complete:

    1. The framework calls update(buffer: MutableRow, input: InternalRow) to process the input row. 2. In update, we get the buffer object from the global buffer row and call update(buffer: T, input: InternalRow): Unit.

    If the aggregate mode is PartialMerge or Final:

    1. The framework call merge(buffer: MutableRow, inputBuffer: InternalRow) to process the input row, which are serialized buffer objects shuffled from other nodes. 2. In merge, we get the buffer object from the global buffer row, and get the binary data from input row and deserialize it to buffer object, then we call merge(buffer: T, input: T): Unit to merge these 2 buffer objects.

    Stage 3: output results.

    If the aggregate mode is Partial or PartialMerge:

    1. The framework calls serializeAggregateBufferInPlace to replace the buffer object in the global buffer row with binary data. 2. In serializeAggregateBufferInPlace, we get the buffer object from the global buffer row and call serialize(buffer: T): Array[Byte] to serialize the buffer object to binary. 3. The framework outputs buffer attributes and shuffle them to other nodes.

    If the aggregate mode is Final or Complete:

    1. The framework calls eval(buffer: InternalRow) to calculate the final result. 2. In eval, we get the buffer object from the global buffer row and call eval(buffer: T): Any to get the final result. 3. The framework outputs these final results.

    Window function work flow: The framework calls update(buffer: MutableRow, input: InternalRow) several times and then call eval(buffer: InternalRow), so there is no need for window operator to call serializeAggregateBufferInPlace.

    NOTE: SQL with TypedImperativeAggregate functions is planned in sort based aggregation, instead of hash based aggregation, as TypedImperativeAggregate use BinaryType as aggregation buffer's storage format, which is not supported by hash based aggregation. Hash based aggregation only support aggregation buffer of mutable types (like LongType, IntType that have fixed length and can be mutated in place in UnsafeRow). NOTE: The newly added ObjectHashAggregateExec supports TypedImperativeAggregate functions in hash based aggregation under some constraints.

  57. case class V2Aggregator[BUF <: Serializable, OUT](aggrFunc: connector.catalog.functions.AggregateFunction[BUF, OUT], children: Seq[Expression], mutableAggBufferOffset: Int = 0, inputAggBufferOffset: Int = 0) extends TypedImperativeAggregate[BUF] with ImplicitCastInputTypes with scala.Product with Serializable
  58. case class VariancePop(child: Expression, nullOnDivideByZero: Boolean = ...) extends CentralMomentAgg with scala.Product with Serializable
    Annotations
    @ExpressionDescription()
  59. case class VarianceSamp(child: Expression, nullOnDivideByZero: Boolean = ...) extends CentralMomentAgg with scala.Product with Serializable
    Annotations
    @ExpressionDescription()

Value Members

  1. object AggregateExpression extends Serializable
  2. object ApproximatePercentile extends Serializable
  3. object BloomFilterAggregate extends Serializable
  4. object Complete extends AggregateMode with scala.Product with Serializable

    An AggregateFunction with Complete mode is used to evaluate this function directly from original input rows without any partial aggregation.

    An AggregateFunction with Complete mode is used to evaluate this function directly from original input rows without any partial aggregation. This function updates the given aggregation buffer with the original input of this function. When it has processed all input rows, the final result of this function is returned.

  5. object Count extends Serializable
  6. object Final extends AggregateMode with scala.Product with Serializable

    An AggregateFunction with Final mode is used to merge aggregation buffers containing intermediate results for this function and then generate final result.

    An AggregateFunction with Final mode is used to merge aggregation buffers containing intermediate results for this function and then generate final result. This function updates the given aggregation buffer by merging multiple aggregation buffers. When it has processed all input rows, the final result of this function is returned.

  7. object FirstLast
  8. object HyperLogLogPlusPlus extends Serializable
  9. object NoOp extends LeafExpression with Unevaluable with scala.Product with Serializable

    A place holder expressions used in code-gen, it does not change the corresponding value in the row.

  10. object NumericHistogramSerializer
  11. object Partial extends AggregateMode with scala.Product with Serializable

    An AggregateFunction with Partial mode is used for partial aggregation.

    An AggregateFunction with Partial mode is used for partial aggregation. This function updates the given aggregation buffer with the original input of this function. When it has processed all input rows, the aggregation buffer is returned.

  12. object PartialMerge extends AggregateMode with scala.Product with Serializable

    An AggregateFunction with PartialMerge mode is used to merge aggregation buffers containing intermediate results for this function.

    An AggregateFunction with PartialMerge mode is used to merge aggregation buffers containing intermediate results for this function. This function updates the given aggregation buffer by merging multiple aggregation buffers. When it has processed all input rows, the aggregation buffer is returned.

  13. object PivotFirst extends Serializable

Ungrouped