Skip to content

[C++][Compute] Add ExecNode hierarchy #27765

@asfimport

Description

@asfimport

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:

PRs and other links:

Note: This issue was originally created as ARROW-11928. Please see the migration documentation for further details.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions