Howdy Fellow NetCDFers!
The most recent release of the netcdf-c and netcdf-fortran libraries
include support for the quantize feature - this allows you to set the
number of significant digits for floating point variables. Bits not
required to maintain the specified precision are rounded, and this greatly
improves subsequent compression.
To get lossy compression, use the quantize feature with your floating point
variables, and then turn on either zlib or zstandard compression. The
result will be lossy, because your data will change. But the resulting file
will be far smaller, resulting in lower storage costs and transmission
times, and allowing both writing and reading programs to work more quickly.
Here's a presentation Charlie Zender and I did for the last EGU:
https://www.researchgate.net/publication/360815823_EGU22-13259_Adding_Quantization_to_the_NetCDF_C_and_Fortran_Libraries_to_Enable_Lossy_Compression_1
Here's the on-line documentation for the quantize feature in netCDF:
https://docs.unidata.ucar.edu/netcdf-c/current/md_quantize.html
I'm happy to answer any questions or help explain these new features to
Earth and space science data producers.
Keep on NetCDFing!
Ed Hartnett