You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Andy Grove (Jira)" <ji...@apache.org> on 2020/07/15 14:21:00 UTC
[jira] [Created] (ARROW-9481) [Rust] [DataFusion] Create physical
plan enum to wrap execution plan
Andy Grove created ARROW-9481:
---------------------------------
Summary: [Rust] [DataFusion] Create physical plan enum to wrap execution plan
Key: ARROW-9481
URL: https://issues.apache.org/jira/browse/ARROW-9481
Project: Apache Arrow
Issue Type: Sub-task
Components: Rust, Rust - DataFusion
Reporter: Andy Grove
Assignee: Andy Grove
By wrapping the execution plan structs in an enum, we make it possible to build a tree representing the physical plan just like we do with the logical plan. This makes it easy to print physical plans and also to apply transformations to it.
{code:java}
pub enum PhysicalPlan {
/// Projection.
Projection(Arc<ProjectionExec>),
/// Filter a.k.a predicate.
Filter(Arc<FilterExec>),
/// Hash aggregate
HashAggregate(Arc<HashAggregateExec>),
/// Performs a hash join of two child relations by first shuffling the data using the join keys.
ShuffledHashJoin(ShuffledHashJoinExec),
/// Performs a shuffle that will result in the desired partitioning.
ShuffleExchange(Arc<ShuffleExchangeExec>),
/// Reads results from a ShuffleExchange
ShuffleReader(Arc<ShuffleReaderExec>),
/// Scans a partitioned data source
ParquetScan(Arc<ParquetScanExec>),
/// Scans an in-memory table
InMemoryTableScan(Arc<InMemoryTableScanExec>),
}{code}
h3.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)