You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Structure is stable. Sampled 1995 / 2005 / 2015 / 2024: grid, chunks, dtypes and compression are identical. open_virtual_dataset (v2.7.1, HDFParser) and concat along time work fine.
Blocker: per-file scale/offset packing. Each file has its own conversion formula (value = int × scale + offset). Over three consecutive days, SST's add_offset moves 292.17 → 288.44 → 288.75 K; some variables change scale_factor too. 11 of 14 gridded variables are affected, so concatenated data is silently wrong by up to ~3.7 K. We know this is xr.concat of virtual datasets silently drops mismatched CF encoding (scale_factor, add_offset, _FillValue) #1004 — mentioning it only because this archive is a clean public reproducer.
Minor: variable set drifts across eras (19 variables common to all years). We'd virtualise the intersection.
Why we want this
We already keep two copies of this collection: the NetCDF archive (chunked (1, 1500, 2000) — good for daily whole-map reads) and a rechunked, unpacked Zarr copy (s3://aodn-cloud-optimised/satellite_ghrsst_l3s_1day_daynighttime_single_sensor_australia.zarr, chunked (5, 500, 500) — good for time series). A virtual Zarr over the archive would add a native-chunking view without storing a third copy of the bytes.
Questions
Given per-file packing, is the realistic path to re-encode the packed variables into a materialised store (e.g. Icechunk) and keep virtual references only for the uniformly-encoded ones — or is there a better pattern?
Any gotchas you've seen with this "archive + rechunked copy + virtual native-chunk view" setup?
The archive is public and stable — happy for it to serve as a test case.
Following up from #218: details of a good, clean example of one of our satellite SST archives, and two questions.
The data
s3://imos-data/IMOS/SRS/SST/ghrsst/L3S-1d/dn/{YYYY}/...(1, 1500, 2000)/(1, 2250, 3000)What we found
open_virtual_dataset(v2.7.1,HDFParser) and concat alongtimework fine.value = int × scale + offset). Over three consecutive days, SST'sadd_offsetmoves 292.17 → 288.44 → 288.75 K; some variables changescale_factortoo. 11 of 14 gridded variables are affected, so concatenated data is silently wrong by up to ~3.7 K. We know this is xr.concat of virtual datasets silently drops mismatched CF encoding (scale_factor, add_offset, _FillValue) #1004 — mentioning it only because this archive is a clean public reproducer.Why we want this
We already keep two copies of this collection: the NetCDF archive (chunked
(1, 1500, 2000)— good for daily whole-map reads) and a rechunked, unpacked Zarr copy (s3://aodn-cloud-optimised/satellite_ghrsst_l3s_1day_daynighttime_single_sensor_australia.zarr, chunked(5, 500, 500)— good for time series). A virtual Zarr over the archive would add a native-chunking view without storing a third copy of the bytes.Questions
The archive is public and stable — happy for it to serve as a test case.
cc @TomNicholas (following your suggestion in #218)