Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-15238

[C++] Create "engine" module for the query engine

Details

    Description

      Circular dependencies are popping up in the query engine as the compute module is very low level. For example, it would be nice if the default registry included the scan node and dataset write node. We will want to be adding spillover support at some point and that will rely on parquet/dataset operations.

      We should create a dedicated engine module which includes the query plans, the nodes, etc. This module would not contain the kernels or other low level compute primitives. This way we could have something like...

      engine -> datasets (for scanning) -> parquet -> compute (for calculating statistics)

      The base ExecPlan itself could either go in compute or engine depending on which has the least amount of friction.

      Attachments

        Issue Links

          Activity

            People

              jvanstraten Jeroen van Straten
              westonpace Weston Pace
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 22.5h
                  22.5h

                  Slack

                    Issue deployment