pub struct DynamicQueryPlanner { /* private fields */ }Expand description
Dynamic query planner with adaptive strategy selection
Implementations§
Source§impl DynamicQueryPlanner
impl DynamicQueryPlanner
pub fn new(config: DynamicPlannerConfig) -> Self
Sourcepub async fn create_plan(
&self,
query: &str,
query_complexity: f64,
) -> Result<AdaptivePlan>
pub async fn create_plan( &self, query: &str, query_complexity: f64, ) -> Result<AdaptivePlan>
Create an adaptive plan for a query
Sourcepub async fn record_execution(&self, result: ExecutionResult) -> Result<()>
pub async fn record_execution(&self, result: ExecutionResult) -> Result<()>
Record execution result for adaptation
Sourcepub async fn get_strategy_stats(
&self,
) -> HashMap<ExecutionStrategy, StrategyStats>
pub async fn get_strategy_stats( &self, ) -> HashMap<ExecutionStrategy, StrategyStats>
Get current strategy performance statistics
Sourcepub fn get_metrics(&self) -> DynamicPlannerMetrics
pub fn get_metrics(&self) -> DynamicPlannerMetrics
Get planner metrics
Auto Trait Implementations§
impl !RefUnwindSafe for DynamicQueryPlanner
impl !UnwindSafe for DynamicQueryPlanner
impl Freeze for DynamicQueryPlanner
impl Send for DynamicQueryPlanner
impl Sync for DynamicQueryPlanner
impl Unpin for DynamicQueryPlanner
impl UnsafeUnpin for DynamicQueryPlanner
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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