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 |
---|---|
|
|
|
|
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:
|
|