Struct datafusion::config::AggregateOptions
source · pub struct AggregateOptions {
pub scalar_update_factor: usize,
}
Expand description
Options related to aggregate execution
See also: SessionConfig
Fields§
§scalar_update_factor: usize
Specifies the threshold for using ScalarValue
s to update
accumulators during high-cardinality aggregations for each input batch.
The aggregation is considered high-cardinality if the number of affected groups
is greater than or equal to batch_size / scalar_update_factor
. In such cases,
ScalarValue
s are utilized for updating accumulators, rather than the default
batch-slice approach. This can lead to performance improvements.
By adjusting the scalar_update_factor
, you can balance the trade-off between
more efficient accumulator updates and the number of groups affected.
Trait Implementations§
source§impl Clone for AggregateOptions
impl Clone for AggregateOptions
source§fn clone(&self) -> AggregateOptions
fn clone(&self) -> AggregateOptions
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl ConfigField for AggregateOptions
impl ConfigField for AggregateOptions
source§impl Debug for AggregateOptions
impl Debug for AggregateOptions
source§impl Default for AggregateOptions
impl Default for AggregateOptions
source§fn default() -> AggregateOptions
fn default() -> AggregateOptions
Returns the “default value” for a type. Read more
source§impl PartialEq for AggregateOptions
impl PartialEq for AggregateOptions
source§fn eq(&self, other: &AggregateOptions) -> bool
fn eq(&self, other: &AggregateOptions) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for AggregateOptions
Auto Trait Implementations§
impl Freeze for AggregateOptions
impl RefUnwindSafe for AggregateOptions
impl Send for AggregateOptions
impl Sync for AggregateOptions
impl Unpin for AggregateOptions
impl UnwindSafe for AggregateOptions
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more