Struct datafusion::physical_plan::sorts::sort::SortExec
source · [−]pub struct SortExec { /* private fields */ }
Expand description
External Sort execution plan
Implementations
sourceimpl SortExec
impl SortExec
sourcepub fn try_new(
expr: Vec<PhysicalSortExpr>,
input: Arc<dyn ExecutionPlan>,
fetch: Option<usize>
) -> Result<Self>
pub fn try_new(
expr: Vec<PhysicalSortExpr>,
input: Arc<dyn ExecutionPlan>,
fetch: Option<usize>
) -> Result<Self>
Create a new sort execution plan
sourcepub fn preserve_partitioning(&self) -> bool
pub fn preserve_partitioning(&self) -> bool
Whether this SortExec
preserves partitioning of the children
sourcepub fn new_with_partitioning(
expr: Vec<PhysicalSortExpr>,
input: Arc<dyn ExecutionPlan>,
preserve_partitioning: bool,
fetch: Option<usize>
) -> Self
pub fn new_with_partitioning(
expr: Vec<PhysicalSortExpr>,
input: Arc<dyn ExecutionPlan>,
preserve_partitioning: bool,
fetch: Option<usize>
) -> Self
Create a new sort execution plan with the option to preserve the partitioning of the input plan
sourcepub fn input(&self) -> &Arc<dyn ExecutionPlan>
pub fn input(&self) -> &Arc<dyn ExecutionPlan>
Input schema
sourcepub fn expr(&self) -> &[PhysicalSortExpr]
pub fn expr(&self) -> &[PhysicalSortExpr]
Sort expressions
Trait Implementations
sourceimpl ExecutionPlan for SortExec
impl ExecutionPlan for SortExec
sourcefn output_partitioning(&self) -> Partitioning
fn output_partitioning(&self) -> Partitioning
Get the output partitioning of this plan
sourcefn required_child_distribution(&self) -> Distribution
fn required_child_distribution(&self) -> Distribution
Specifies the data distribution requirements of all the
children for this operator Read more
sourcefn children(&self) -> Vec<Arc<dyn ExecutionPlan>>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn children(&self) -> Vec<Arc<dyn ExecutionPlan>>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Get a list of child execution plans that provide the input for this plan. The returned list
will be empty for leaf nodes, will contain a single value for unary nodes, or two
values for binary nodes (such as joins). Read more
sourcefn relies_on_input_order(&self) -> bool
fn relies_on_input_order(&self) -> bool
Returns
true
if this operator relies on its inputs being
produced in a certain order (for example that they are sorted
a particular way) for correctness. Read moresourcefn benefits_from_input_partitioning(&self) -> bool
fn benefits_from_input_partitioning(&self) -> bool
Returns
true
if this operator would benefit from
partitioning its input (and thus from more parallelism). For
operators that do very little work the overhead of extra
parallelism may outweigh any benefits Read moresourcefn output_ordering(&self) -> Option<&[PhysicalSortExpr]>
fn output_ordering(&self) -> Option<&[PhysicalSortExpr]>
If the output of this operator is sorted, returns
Some(keys)
with the description of how it was sorted. Read moresourcefn with_new_children(
self: Arc<Self>,
children: Vec<Arc<dyn ExecutionPlan>>
) -> Result<Arc<dyn ExecutionPlan>>
fn with_new_children(
self: Arc<Self>,
children: Vec<Arc<dyn ExecutionPlan>>
) -> Result<Arc<dyn ExecutionPlan>>
Returns a new plan where all children were replaced by new plans.
sourcefn execute(
&self,
partition: usize,
context: Arc<TaskContext>
) -> Result<SendableRecordBatchStream>
fn execute(
&self,
partition: usize,
context: Arc<TaskContext>
) -> Result<SendableRecordBatchStream>
creates an iterator
sourcefn metrics(&self) -> Option<MetricsSet>
fn metrics(&self) -> Option<MetricsSet>
sourcefn fmt_as(&self, t: DisplayFormatType, f: &mut Formatter<'_>) -> Result
fn fmt_as(&self, t: DisplayFormatType, f: &mut Formatter<'_>) -> Result
sourcefn statistics(&self) -> Statistics
fn statistics(&self) -> Statistics
Returns the global output statistics for this
ExecutionPlan
node.sourcefn maintains_input_order(&self) -> bool
fn maintains_input_order(&self) -> bool
Returns
false
if this operator’s implementation may reorder
rows within or between partitions. Read moreAuto Trait Implementations
impl !RefUnwindSafe for SortExec
impl Send for SortExec
impl Sync for SortExec
impl Unpin for SortExec
impl !UnwindSafe for SortExec
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more