Re-exports§
pub use crate::display::DefaultDisplay;pub use crate::display::DisplayAs;pub use crate::display::DisplayFormatType;pub use crate::display::VerboseDisplay;pub use crate::metrics::Metric;pub use crate::stream::EmptyRecordBatchStream;
Modules§
- expressions
- Defines physical expressions that can evaluated at runtime during query execution
- hash_
utils - Functionality used both on logical and physical plans
Macros§
- check_
len 🔒 - internal_
err - Macro wraps Err(
$ERR) to add backtrace feature
Structs§
- Column
Statistics - Statistics for a column within a relation
- Plan
Properties - Stores certain, often expensive to compute, plan properties used in query optimization.
- Statistics
- Statistics for a relation Fields are optional and can be inexact because the sources sometimes provide approximate estimates for performance reasons and the transformations output are not always predictable.
Enums§
- Boundedness
- Represents whether a stream of data generated by an operator is bounded (finite) or unbounded (infinite).
- Cardinality
Effect - Indicates the effect an execution plan operator will have on the cardinality of its input stream
- Columnar
Value - The result of evaluating an expression.
- Distribution
- How data is distributed amongst partitions. See
Partitioningfor more details. - Emission
Type - Represents how an operator emits its output records.
- Evaluation
Type - Represents how an operator’s
Streamimplementation generatesRecordBatches. - Input
Order Mode - Specifies how the input to an aggregation or window operator is ordered
relative to their
GROUP BYorPARTITION BYexpressions. - Invariant
Level ExecutionPlanInvariant Level- Partitioning
- Output partitioning supported by
ExecutionPlans. - Scheduling
Type - Represents whether an operator’s
Streamhas been implemented to actively cooperate with the Tokio scheduler or not. Please refer to thecoopmodule for more details.
Traits§
- Accumulator
- Tracks an aggregate function’s state.
- Execution
Plan - Represent nodes in the DataFusion Physical Plan.
- Execution
Plan Properties - Extension trait provides an easy API to fetch various properties of
ExecutionPlanobjects based onExecutionPlan::properties. - Physical
Expr PhysicalExprs represent expressions such asA + 1orCAST(c1 AS int).- Record
Batch Stream - Trait for types that stream [RecordBatch]
- Window
Expr - Common trait for window function implementations
Functions§
- boundedness_
from_ 🔒children - Utility to determine an operator’s boundedness based on its children’s boundedness.
- check_
default_ invariants - Checks a set of invariants that apply to all ExecutionPlan implementations. Returns an error if the given node does not conform.
- check_
not_ null_ constraints - Checks a
RecordBatchfornot nullconstraints on specified columns. - collect
- Execute the ExecutionPlan and collect the results in memory
- collect_
partitioned - Execute the ExecutionPlan and collect the results in memory
- displayable
- Return a
DisplayableExecutionPlanwrapper around anExecutionPlanwhich can be displayed in various easier to understand ways. - emission_
type_ 🔒from_ children - Determines the emission type of an operator based on its children’s pipeline behavior.
- execute_
input_ stream - Executes an input stream and ensures that the resulting stream adheres to
the
not nullconstraints specified in thesink_schema. - execute_
stream - Execute the ExecutionPlan and return a single stream of
RecordBatches. - execute_
stream_ partitioned - Execute the ExecutionPlan and return a vec with one stream per output partition
- get_
plan_ string - Utility function yielding a string representation of the given
ExecutionPlan. - need_
data_ exchange - Indicate whether a data exchange is needed for the input of
plan, which will be very helpful especially for the distributed engine to judge whether need to deal with shuffling. Currently, there are 3 kinds of execution plan which needs data exchange 1. RepartitionExec for changing the partition number between twoExecutionPlans 2. CoalescePartitionsExec for collapsing all of the partitions into one without ordering guarantee 3. SortPreservingMergeExec for collapsing all of the sorted partitions into one with ordering guarantee - project_
schema - Applies an optional projection to a [
SchemaRef], returning the projected schema - with_
new_ children_ if_ necessary - Returns a copy of this plan if we change any child according to the pointer comparison.
The size of
childrenmust be equal to the size ofExecutionPlan::children().
Type Aliases§
- Sendable
Record Batch Stream - Trait for a [
Stream] of [RecordBatch]es that can be passed between threads