pub struct DataFusionDistributedPlanner { /* private fields */ }Expand description
Lowers a DataFusion datafusion::logical_expr::LogicalPlan onto tablets.
Conversion is two-phase: the DataFusion tree is reduced to
LogicalPlanLite, then distribute places fragments. Filters and
projections are pushed onto base scans; residual filters that cannot be
pushed are rejected rather than stringified without worker evaluation.
Implementations§
Source§impl DataFusionDistributedPlanner
impl DataFusionDistributedPlanner
Sourcepub fn with_options(query_id: QueryId, options: PlannerOptions) -> Self
pub fn with_options(query_id: QueryId, options: PlannerOptions) -> Self
Planner with explicit fragment/join tuning.
Sourcepub fn lower(
&self,
plan: &LogicalPlan,
locator: &dyn TabletLocator,
metadata: &dyn ClusterMetadata,
) -> DistributedResult<DistributedPlan>
pub fn lower( &self, plan: &LogicalPlan, locator: &dyn TabletLocator, metadata: &dyn ClusterMetadata, ) -> DistributedResult<DistributedPlan>
Lowers plan into a DistributedPlan against the given locator and
control-plane metadata.
Sourcepub fn to_lite(&self, plan: &LogicalPlan) -> DistributedResult<LogicalPlanLite>
pub fn to_lite(&self, plan: &LogicalPlan) -> DistributedResult<LogicalPlanLite>
Converts a DataFusion logical plan into the distributed IR without tablet placement. Useful for unit tests and diagnostics.
Trait Implementations§
Source§impl Clone for DataFusionDistributedPlanner
impl Clone for DataFusionDistributedPlanner
Source§fn clone(&self) -> DataFusionDistributedPlanner
fn clone(&self) -> DataFusionDistributedPlanner
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for DataFusionDistributedPlanner
impl RefUnwindSafe for DataFusionDistributedPlanner
impl Send for DataFusionDistributedPlanner
impl Sync for DataFusionDistributedPlanner
impl Unpin for DataFusionDistributedPlanner
impl UnsafeUnpin for DataFusionDistributedPlanner
impl UnwindSafe for DataFusionDistributedPlanner
Blanket Implementations§
impl<T> Allocation for T
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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