ImperativeAggregate — Contract for Aggregate Function Expressions with Imperative Methods
ImperativeAggregate
is the contract for aggregate functions that are expressed in terms of imperative initialize, update, and merge methods (that operate on Row
-based aggregation buffers).
ImperativeAggregate
is a Catalyst expression with CodegenFallback.
Name | Description |
---|---|
|
|
|
|
ImperativeAggregate Contract
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
package org.apache.spark.sql.catalyst.expressions.aggregate abstract class ImperativeAggregate { def initialize(mutableAggBuffer: InternalRow): Unit val inputAggBufferOffset: Int def merge(mutableAggBuffer: InternalRow, inputAggBuffer: InternalRow): Unit val mutableAggBufferOffset: Int def update(mutableAggBuffer: InternalRow, inputRow: InternalRow): Unit def withNewInputAggBufferOffset(newInputAggBufferOffset: Int): ImperativeAggregate def withNewMutableAggBufferOffset(newMutableAggBufferOffset: Int): ImperativeAggregate } |
Method | Description |
---|---|
Used when:
|
|
Used when:
|
|
Used when:
|
|