Back to .md Directory

Kerchunk

Explains how Kerchunk creates cloud-friendly access to netCDF/HDF5 data by extracting metadata and enabling parallel chunk reads.

May 2, 2026
0 downloads
0 views
View source

What this file does

Explains how Kerchunk creates cloud-friendly access to netCDF/HDF5 data by extracting metadata and enabling parallel chunk reads.

When to use it

  • Working with large netCDF or HDF5 files in cloud storage
  • Needing parallel or concurrent data access without full file downloads
  • Combining multiple files into a single virtual dataset
  • Evaluating Kerchunk's trade-offs for your workflow

Assumes this stack

KerchunkDaskZarrfsspecnetCDF4HDF5

tags:

  • To Do
  • Kerchunk

Kerchunk

!!! warning

Unsorted notes

kerchunk supports cloud-friendly access of data with specific reference to netCDF4/HDF5 files.1

How? Kerchunk

  • extracts metadata in a single scan
  • arranges multiple chunks from multiple files
  • with dask and zarr, reads chunks in parallel and/or concurrently within a single indexible aggregate dataset

+ advantages

  • supports parallel and concurrent reads
  • memory efficiency
  • parallel processing
  • data locality

- drawbacks

  • ?

How does it work?

  • Combines fsspec, dask, and zarr

    one_day_data = read_chunk("10_year_data_chunked.hdf5", chunk_index=0)
    
  • Reference file :

    {
      "version": 1,
      "shapes": {"var1": [365, 24]},
      "refs": {
        "var1/0": ["file_1.nc", "0:24"],
        "var1/1": ["file_2.nc", "0:24"],
        // ...
      }
    }
    

!!! seealso

- [References specification](https://fsspec.github.io/kerchunk/spec.html)

Real world examples

Footnotes

  1. Development supported by NASA fundung https://doi.org/10.6084/m9.figshare.22266433.v1 ↩

What's inside

5 sections: intro, advantages, drawbacks, how it works with code example, real-world links

Change this for your project

  • Replace "file_1.nc" and "file_2.nc" in the reference JSON with your actual file paths
  • Replace "10_year_data_chunked.hdf5" in the code example with your own file name
  • Replace the HYCOM example links with your own dataset examples if applicable

Where it goes

Keep it in your repository where the agent or team that needs it will read it.

Related Documents