unidata’s cdm: netcdf , opendap , hdf
DESCRIPTION
Unidata’s CDM: netCDF , OPeNDAP , HDF. Ethan Davis 10 January 2014 ESIP Winter Meeting – OPeNDAP BoF. OPeNDAP support in netCDF libraries. netCDF libraries netCDF -C (and Fortran, C++, perl , R, python, ...) netCDF -Java (implements the CDM) OPeNDAP support Existing DAP2 support - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/1.jpg)
Unidata’s CDM: netCDF, OPeNDAP, HDF
Ethan Davis10 January 2014
ESIP Winter Meeting – OPeNDAP BoF
![Page 2: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/2.jpg)
OPeNDAP support in netCDF libraries
• netCDF libraries– netCDF-C (and Fortran, C++, perl, R, python, ...)– netCDF-Java (implements the CDM)
• OPeNDAP support– Existing DAP2 support
• Client: netCDF-C and netCDF-Java/CDM• Server: THREDDS Data Server (TDS)
– DAP4 development• Client: netCDF-Java/CDM• Server: THREDDS Data Server (TDS)
– Future DAP4 support (real soon now!)• Client: netCDF-C
![Page 3: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/3.jpg)
Application
OPeNDAP
NetCDF-3
HDF4
Dispatch
Data Access API
NetCDF-4
…
C Library Architecture
HDF5
![Page 4: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/4.jpg)
NetcdfDataset
Application
Scientific Feature Types
NetCDF-Java/
CDM architecture
THREDDS
Catalog.xml
OPeNDAP
NetCDF-3
HDF4
I/O service provider
GRIB
GINI
NIDS
NetcdfFile
NetCDF-4
…Nexrad
DMSP
CoordSystem Builder
Datatype Adapter
NcML
CDM Architecture
cdmremote
Local Files
Remote Datasets
![Page 5: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/5.jpg)
NetCDF Classic data model(aka netCDF-3)
• Multidimensional arrays of primitive values– byte, char, short, int, float, double
• Key/value attributes• Shared dimensions• Fortran77
![Page 6: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/6.jpg)
OPeNDAP and netCDF-3
• DAP2 carried this data model pretty well– Some translation required
• String vs char*• Shared dimensions vs Grids/Maps
• DAP2 extras– Sequences, relational queries
• HDF-5 extras– Groups, structures, variable length arrays,...
![Page 7: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/7.jpg)
NetCDF Enhanced Data Model(aka netCDF-4)
![Page 8: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/8.jpg)
OPeNDAP and netCDF-4• netCDF-4 extends classic model:
– Groups; Structures; Sequences/varLength arrays• Mapping into DAP2:
– Shared dims vs Grids– Primitive types– No Groups in DAP2– No relational queries in CDM
• DAP4 will carry the netCDF enhanced data model– Still netCDF-4 doesn't do relational queries
• Something for CDM scientific data types (efficient?)• Server-side (TDS) for efficient "relational" queries
![Page 9: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/9.jpg)
Thank You
![Page 10: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/10.jpg)
Commitment to Backward CompatibilityBecause preserving access to archived datafor future generations is sacrosanct:
• NetCDF-4 provides both read and write access to all earlier forms of netCDF data.
• Existing C and Fortran netCDF programs will continue to work after recompiling and relinking.
• Future versions of netCDF will continue to support both data access compatibility and API compatibility.
![Page 11: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/11.jpg)
NetCDF Disk Formats
![Page 12: Unidata’s CDM: netCDF , OPeNDAP , HDF](https://reader036.vdocuments.net/reader036/viewer/2022062310/56816386550346895dd4714d/html5/thumbnails/12.jpg)
Thank You