-
Notifications
You must be signed in to change notification settings - Fork 4k
Closed
Description
Per discussion on https://docs.google.com/document/d/1AyTdLU-RxA-Gsb9EsYnrQrmqPMOYMfPlWwxRi1Is1tQ
Add an ExecNode interface with which a streaming execution graph can be constructed. Initial concrete classes will include:
- ScanNode, which wraps a dataset and is a pure emitter of batches (initially, this will only wrap memory sized datasets such as tables. See ARROW-11930)
- FilterNode, which evaluates an expression on inputs and based on the result removes rows from batches (eventually, this may defer materialization of the selection to other kernels. See ARROW-5005 ARROW-10474)
- ProjectNode, which evaluates expressions on inputs producing new columns.
- GroupedAggregateNode, which computes aggregations grouped on one or more keys.
Reporter: Ben Kietzman / @bkietz
Assignee: Ben Kietzman / @bkietz
Related issues:
- [C++] C++ array kernels framework and execution buildout (umbrella issue) (is a child of)
- [C++] Query engine umbrella issue (is a child of)
- [C++] Implement LogicalPlan and LogicalPlanBuilder (supercedes)
PRs and other links:
Note: This issue was originally created as ARROW-11928. Please see the migration documentation for further details.