pub struct JoinOptions {
pub join_type: JoinType,
pub algorithm: JoinAlgorithm,
pub batch_size: usize,
pub memory_limit_bytes: Option<usize>,
pub concurrency: usize,
}Expand description
Options controlling join execution.
Fields§
§join_type: JoinTypeType of join to perform.
algorithm: JoinAlgorithmAlgorithm to use. Planner may override this based on table sizes.
batch_size: usizeTarget number of probe rows per output RecordBatch.
Larger batches reduce per-batch overhead (fewer Arrow gathers) at the
cost of increased peak memory; smaller batches improve latency.
memory_limit_bytes: Option<usize>Memory limit in bytes for hash table (hash join only). When exceeded, algorithm will partition and spill to disk.
concurrency: usizeConcurrency hint: number of threads for parallel partitions.
Implementations§
Source§impl JoinOptions
impl JoinOptions
Sourcepub fn with_algorithm(self, algorithm: JoinAlgorithm) -> Self
pub fn with_algorithm(self, algorithm: JoinAlgorithm) -> Self
Set the join algorithm.
Sourcepub fn with_batch_size(self, batch_size: usize) -> Self
pub fn with_batch_size(self, batch_size: usize) -> Self
Set the output batch size.
Sourcepub fn with_memory_limit(self, limit_bytes: usize) -> Self
pub fn with_memory_limit(self, limit_bytes: usize) -> Self
Set the memory limit for hash joins.
Sourcepub fn with_concurrency(self, concurrency: usize) -> Self
pub fn with_concurrency(self, concurrency: usize) -> Self
Set the concurrency level.
Trait Implementations§
Source§impl Clone for JoinOptions
impl Clone for JoinOptions
Source§fn clone(&self) -> JoinOptions
fn clone(&self) -> JoinOptions
Returns a duplicate 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 Debug for JoinOptions
impl Debug for JoinOptions
Auto Trait Implementations§
impl Freeze for JoinOptions
impl RefUnwindSafe for JoinOptions
impl Send for JoinOptions
impl Sync for JoinOptions
impl Unpin for JoinOptions
impl UnwindSafe for JoinOptions
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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