The NetCDF-4 Data Model
The netCDF-4 data model adds Groups and User-Defined Types to the classic netCDF data model, but backward compatibility is preserved.
Features of netCDF-4 address netCDF-3 limitations.
Compatibility of NetCDF-4
NetCDF-4 provides both format and API compatibility with netCDF-3.
The String type can replace character arrays for most purposes.
Additional Numeric Types
New primitive types include 64-bit integers and unsigned integer types.
Use of Unicode in names provides better support for international uses.
Groups provide a scope for names and a scalable way to organize data objects.
Multiple Unlimited Dimensions
Multiple unlimited dimensions let variables grow along multiple axes.
Compound types provide a portable version of C structs.
Enumerations can provide named flag values for improving self-description
Variable-Length types provide support for ragged arrays.
NetCDF-4 Performance Improvements
NetCDF-4 uses HDF5 for its storage layer, which provides several ways to improve performance, even for netCDF-3 programs.
Chunked storage can provide significant performance benefits
Per-variable compression means variables may be compressed independently.
Ample Variable Sizes
Most constraints on variable size are eliminated in netCDF-4.
Efficient Dynamic Schema Changes
In netCDF-4, it is possible to efficiently add new metadata
Parallel I/O exploits parallel file systems on high-performance computing platforms.
Reader Makes Right Conversions
The use of a "reader makes right" approach avoids many data conversions.
NetCDF-4 beta is currently available for testing.