Packages

class AggHelper extends Serializable

Internal class used in computeAggregates for the pre, agg, and post steps

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AggHelper
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AggHelper(inputAttributes: Seq[Attribute], groupingExpressions: Seq[NamedExpression], aggregateExpressions: Seq[GpuAggregateExpression], forceMerge: Boolean, conf: SQLConf, isSorted: Boolean = false)

    inputAttributes

    input attributes to identify the input columns from the input batches

    groupingExpressions

    expressions used for producing the grouping keys

    aggregateExpressions

    GPU aggregate expressions used to produce the aggregations

    forceMerge

    if true, we are merging two pre-aggregated batches, so we should use the merge steps for each aggregate function

    conf

    A configuration used to control TieredProject operations in an aggregation.

    isSorted

    if the batch is sorted this is set to true and is passed to cuDF as an optimization hint

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def aggregate(metrics: GpuHashAggregateMetrics, preProcessed: SpillableColumnarBatch): SpillableColumnarBatch
  5. def aggregate(preProcessed: ColumnarBatch, numAggs: GpuMetric): ColumnarBatch
  6. def aggregateWithoutCombine(metrics: GpuHashAggregateMetrics, preProcessed: Iterator[SpillableColumnarBatch]): Iterator[SpillableColumnarBatch]
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  11. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. def performGroupByAggregation(preProcessed: ColumnarBatch): ColumnarBatch

    Used to produce a group-by aggregate

    Used to produce a group-by aggregate

    preProcessed

    the batch after the "pre" step

    returns

    a Table that has been cuDF aggregated

  19. def performReduction(preProcessed: ColumnarBatch): ColumnarBatch

    Invoke reduction functions as defined in each CudfAggreagte

    Invoke reduction functions as defined in each CudfAggreagte

    preProcessed

    - a batch after the "pre" step

  20. def postProcess(input: Iterator[SpillableColumnarBatch], metrics: GpuHashAggregateMetrics): Iterator[SpillableColumnarBatch]
  21. def postProcess(aggregatedSpillable: SpillableColumnarBatch, metrics: GpuHashAggregateMetrics): SpillableColumnarBatch

    Used to produce the outbound batch from the aggregate that could be shuffled or could be passed through the evaluateExpression if we are in the final stage.

    Used to produce the outbound batch from the aggregate that could be shuffled or could be passed through the evaluateExpression if we are in the final stage. It takes a cuDF aggregated batch and applies the "post" step: postUpdate for update, or postMerge for merge

    returns

    output batch from the aggregate

  22. def preProcess(toAggregateBatch: ColumnarBatch, metrics: GpuHashAggregateMetrics): SpillableColumnarBatch

    Apply the "pre" step: preMerge for merge, or pass-through in the update case

    Apply the "pre" step: preMerge for merge, or pass-through in the update case

    toAggregateBatch

    - input (to the agg) batch from the child directly in the merge case, or from the inputProjection in the update case.

    returns

    a pre-processed batch that can be later cuDF aggregated

  23. val preStepBound: GpuTieredProject
  24. def setSort(isSorted: Boolean): Unit
  25. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  26. def toString(): String
    Definition Classes
    AnyRef → Any
  27. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped