Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-2743

Parquet file metadata caching

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.2.0
    • Storage - Parquet
    • None

    Description

      To run a query against parquet files, we have to first recursively search the directory tree for all of the files, get the block locations for each file, and read the footer from each file, and this is done during the planning phase. When there are many files, this can result in a very large delay in running the query, and it does not scale.

      However, there isn't really any need to read the footers during planning, if we instead treat each parquet file as a single work unit, all we need to know are the block locations for the file, the number of rows, and the columns. We should store only the information which we need for planning in a file located in the top directory for a given parquet table, and then we can delay reading of the footers until execution time, which can be done in parallel.

      Attachments

        1. drill.parquet_metadata
          5 kB
          Steven Phillips
        2. DRILL-2743.patch
          72 kB
          Steven Phillips

        Activity

          People

            rkins Rahul Kumar Challapalli
            sphillips Steven Phillips
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: