NASA-IMPACT / NASA-IMPACT/veda-odd

Benchmarking Virtual Zarr vs. Traditional NetCDF for TEMPO NO₂

Open
#473 0 comments 0 reactions 2 assignees View on GitHub

@maxrjones is already working on this.

Since Sep 15, 2026.

Dominant language
No language data
Stars
5
Forks
0
Avg merge
4d 19h
Merged PRs (30d)
3

Description

Motivation

Like to propose a benchmark to compare Virtual Zarr / Icechunk vs. traditional file-based NetCDF access using TEMPO Level-3 NO₂ data.

evaluate realistic Earth science access and analysis workflows — including spatial/temporal subsetting, point queries, aggregation, and visualization.

Dataset

TEMPO Gridded NO₂ Tropospheric and Stratospheric Columns V04 (Provisional)
Primary variable for the initial benchmark:
Vertical tropospheric column NO₂ (molecules/cm²)

Scientific use case

A good real-world test case is the April 14, 2025 central Plains/Oklahoma dust storm and grassland fire event.

Proposed benchmark workloads

  1. Point-based access

Use a controlled set of locations within the event region:

1 point
10 points
50 points
250 points

For each TEMPO observation, extract the corresponding/intersecting NO₂ pixel.

This tests how access performance scales with the number of requested locations.

Potential output:

point_id
requested_lat
requested_lon
pixel_lat
pixel_lon
observation_time
tropospheric_no2

  1. Spatial AOI extraction

Rather than only querying points, retrieve complete spatial subsets for increasingly large regions.

Potential AOIs:

25 × 25 km
50 × 50 km
100 × 100 km
250 × 250 km

For each TEMPO observation:

AOI

intersect TEMPO observation

retrieve NO₂

quality filter

analyze / visualize

This is likely a more realistic than point extraction alone.

Scientific analysis

After retrieving the data, we can perform simple analysis such as:

Spatial statistics
Mean NO₂
Median NO₂
Maximum NO₂
Standard deviation
Number of valid pixels
Spatial coverage

Plume / hotspot analysis

An additional science-oriented experiment could identify enhanced NO₂ relative to a regional background and track:

Maximum NO₂
Area of enhanced NO₂
Location/centroid of enhanced NO₂
Evolution of the enhanced region over successive observations

This would turn the benchmark into an actual event-based atmospheric analysis workflow, rather than just an I/O test.

Visualization benchmark

A. Single-observation map

Retrieve a spatial subset and render a NO₂ map.

Measure:

Data retrieval time
Processing time
Rendering time
Total time to first map
Bytes transferred
Peak memory
B. Successive observation maps

Potential metrics

Time to open dataset
Time to first data
Time to first map
Data transferred
Bytes read
Number of files/objects accessed
Peak memory
Processing time
Rendering time
End-to-end workflow time

Potential derived metrics

Speedup

NetCDF time / Virtual Zarr time

Data-transfer reduction

1 - (Virtual Zarr bytes / NetCDF bytes)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.