datafusion icon indicating copy to clipboard operation
datafusion copied to clipboard

Advanced example for building an external index for Row Groups *within* parquet files

Open alamb opened this issue 1 year ago • 0 comments

Is your feature request related to a problem or challenge?

It is common in databases and other analytic system to have additional external "indexes" (perhaps stored in the "metadata catalog", perhaps stored alongside the data files, perhaps embedded in the files, perhaps elsewhere)

These indexes are used to speed up queries by "pruning": specifically evaluating a predicate on the index and then only reading the portions of files that would pass the filters in the query. In https://github.com/apache/datafusion/issues/10546 we showed how to create a index for entire files.

I would also like to create an example of how to create such an index for row groups within a file (showing how to read it without re-reading the metadata each time)

To complete this example, I think we need:

  1. The API from @NGA-TRAN in https://github.com/apache/datafusion/issues/10453
  2. The API described in https://github.com/apache/datafusion/issues/9929

Describe the solution you'd like

No response

Describe alternatives you've considered

No response

Additional context

This is a follow on to https://github.com/apache/datafusion/issues/10546

alamb avatar May 20 '24 15:05 alamb