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

[C++][Dataset] Projection pushdown in IPC (feather) format

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • None
    • None
    • C++
    • None

    Description

      The datasets API uses the RecordBatchFileReader to read feather files. This reader will always "read" the entire file. If the file is memory mapped this might not be a true read. However, the datasets API never uses memory mapped files.

      This large read from RAM (or worse, disk) becomes a bottleneck for simple queries that load only a few columns from the dataset.

      The fix may be to modify the reader to seek out and pluck only the needed data. Or the fix may be to modify the datasets API to use memory mapped files when possible (although the former approach seems more generally applicable).

      This is related to ARROW-8250 but that issue seems more focused on row filtering while this issue is for column filtering.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              westonpace Weston Pace
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Slack

                  Issue deployment