#[non_exhaustive]pub struct OptimizerConfig {
pub dp_threshold: usize,
pub index_heat_threshold: f32,
pub enable_pushdown: bool,
pub default_filter_selectivity: f64,
pub transfer_cost_multiplier: f64,
pub default_bytes_per_row: u64,
}Expand description
Configuration for query optimization.
Controls optimizer behavior including thresholds for algorithm selection and feature toggles.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.dp_threshold: usizeMaximum number of relations for exhaustive dynamic programming.
When a query involves more relations than this threshold, the optimizer switches to a greedy algorithm for join ordering to avoid exponential time complexity. Default: 10 relations.
index_heat_threshold: f32Heat threshold for recommending index creation.
Relations with access heat above this threshold are candidates for index building to accelerate future queries. Default: 0.7.
enable_pushdown: boolEnable predicate pushdown optimization.
When enabled, filter predicates are pushed down through projections and joins to be applied as early as possible. Default: true.
default_filter_selectivity: f64Default selectivity for filters when no statistics are available.
Used as a fallback when column statistics cannot provide a better estimate. Default: 0.1 (10% selectivity).
transfer_cost_multiplier: f64Cost multiplier for GPU-to-host data transfers.
Transfers are expensive operations; this multiplier reflects the relative cost compared to local GPU operations. Default: 100.0.
default_bytes_per_row: u64Bytes per row used for GPU memory estimation when schema is unknown.
Default: 32 bytes (assumes 4 columns at 8 bytes each on average).
Trait Implementations§
Source§impl Clone for OptimizerConfig
impl Clone for OptimizerConfig
Source§fn clone(&self) -> OptimizerConfig
fn clone(&self) -> OptimizerConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more