This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
> Organization: BB&N > Keywords: 199405041917.AA24090 Hi Ken, > Do you know whether there is any relationship or comparison to be made > between Unidata netCDF format and NCSA HDF format? E.g. do they solve > different problems or are they independent attacks on similar problems? > are they complementary and worth synthesizing? is one a subset of the > other? > > I came to wonder about this because NCSA (the makers of Mosaic) makes > a conferencing application called collage, which uses HDF for scientific > data representation... but I don't know much more than that. First, here's the official answer from the netCDF FAQ at http://www.unidata.ucar.edu/packages/netcdf/faq.html 7. What is the connection between netCDF and HDF? The National Center for Supercomputing Applications (NCSA) developed the HDF software and makes it freely available. HDF is an extensible data format for self-describing files that was developed independently of netCDF. Applications and utilities based on HDF are available that support raster-image manipulation and display and browsing through multidimensional scientific data. The HDF software includes a package of routines for accessing each HDF data type, as well as a lower-level interface for building packages to support new types. HDF supports both C and Fortran interfaces, and it has been successfully ported to a wide variety of machine architectures and operating systems. HDF emphasizes a single common format for data, on which many interfaces can be built. NCSA has implemented software that provides a netCDF interface to HDF. With this software, it is possible to use the netCDF calling interface to place data into an HDF file. The netCDF calling interface has not changed and netCDF files stored in XDR format are readable, so existing programs and data will still be usable (although programs will need to be relinked to the new library). There is currently no support for the mixing of HDF and netCDF structures. For example, a raster image can exist in the same file as a netCDF object, but you have to use the Raster Image interface to read the image and the netCDF interface to read the netCDF object. The other HDF interfaces are currently being modified to allow multi-file access, closer integration with the netCDF interface will probably be delayed until the end of that project. Eventually, it may be possible to integrate netCDF objects with the rest of the HDF tool suite. Such an integration will then allow tools written for netCDF and tools written for HDF to both interact intelligently with the new data files. We met with the HDF developers a couple of years ago to see if some sort of synthesis or combination would be desirable and practical. What came out of that was NCSA's decision to try to add the netCDF interface to the set of interfaces layered on top of the HDF format. HDF originally had a simpler interface for scientific data, but the NCSA developers liked the netCDF interface better. There are significant performance differences between the two implementations of the netCDF interface, with each significantly faster than the other for some kinds of operations. HDF emphasizes a single common format for data, on which many interfaces can be built. NetCDF emphasizes a single common interface to data, implemented on top of an architecture-independent representation. __________________________________________________________________________ Russ Rew UCAR Unidata Program address@hidden P.O. Box 3000 (303)497-8645 Boulder, Colorado 80307-3000