NetCDF (Network Common Data Form) est constitué, d'une part, d'un ensemble de bibliothèques logicielles et d'autre part, d'un format de données « auto-documenté », indépendant de l'architecture matérielle qui permet la création, l'accès et le partage de données scientifiques stockées sous la forme de tableaux. Le site internet du projet est hébergé par le à l' (UCAR). Ils sont par ailleurs les mainteneurs principaux des programmes, des spécifications, etc. Il s'agit d'un format ouvert.
La version 4.0 datant de 2008 améliore le format en ajoutant le support du modèle de données HDF5.
Le format, à l'origine, avait pour modèle conceptuel le format CDF issu de la NASA mais il a depuis divergé de façon telle qu'aujourd'hui ces deux formats ne sont plus compatibles.
Description du format
Le format de données est « auto-documenté » c'est-à-dire qu'il existe un en-tête qui décrit la disposition des données dans le reste du fichier, et en particulier des tableaux de données. Cet en-tête contient aussi une liste arbitraire de métadonnées se présentant sous la forme d'attribut de type nom/valeur. Le format est indépendant de l'architecture matérielle, notamment grâce à la prise en charge par la bibliothèque des questions de boutisme. Les tableaux de données sont linéaires et sont stockés de manière simple de façon à permettre un accès efficace à un sous-ensemble d'un tableau.
La version 4.0 de l'API netCDFVersion 4.0 of the netCDF API permet l'utilisation du format de données HDF5. Ce nouveau format étend les possibilités de l'ancien notamment en ajoutant: six nouveaux types primitifs, la possibilité pour les utilisateurs de définir des types de données personnalisés, la possibilité de définir des dimensions illimitées, la possibilité de définir des groupes permettant d'organiser hiérarchiquement les données et de fournir, aux noms, une portée.
Par défaut, la bibliothèque netCDF utilise le format binaire classique. Cette version est totalement rétro-compatible en lecture avec l'ancien format de fichier netCDF.
Logiciels Bibliothèques
Les bibliothèques fournies par l'UCAR permettent un accès en lecture/écriture aux fichiers netCDF. La bibliothèque principale est écrite en C, et fournit une API pour les applications codées dans les langages C, C++ et Fortran. Une implémentation alternative, aussi développée et maintenue par Unidata, est écrite en Java; cette implémentation étend le modèle de données et ajoute de nouvelles fonctionnalités. La manipulation de la bibliothèque C par d'autres langages ou des logiciels peut se faire à l'aide des nombreux bindings existants : R, Perl, Python, Ruby, Matlab, Scilab, IDL, et Octave. De même tous les langages fournissant une FFI peuvent utiliser la bibliothèque C et ainsi manipuler les fichiers netCDF. Les conventions d'appels spécifiques à une version de la bibliothèque sont préservés pour des raisons de rétro-compatibilité.
Utilitaires
Il existe de nombreuses applications qui utilisent le format de fichier netCDF. Cela va de l'utilitaire en ligne de commande à l'application de visualisation. Vous trouverez, ci-dessous, une liste succincte. Une listeListe des logiciels utilisant le format netCDF. plus détaillée est disponible sur le site de l'UCAR. Un ensemble d'utilitaires en ligne de commande pour les fichiers netCDF appelé NetCDF Operators (NCO). Cet ensemble fournit des commandes pour la manipulation et l'analyse des fichiers netCDF. ncBrowsencBrowse est une visionneuse générique de fichier netCDF. ncviewncview est un explorateur de fichiers netCDF. Ce programme est un outil graphique simple, rapide permettant de la visualisation des champs des fichiers netCDF. PanoplyPanoply est un visualisateur développé par le Goddard Institute for Space Studies de la NASA. Il a été développé en Java. Le langage NCAR Command Language est utilisé pour analyser et visualiser les données de fichiers netCDF (entre autres). PyNIOPyNIO est un module Python qui permet de lire et d'écrire dans de nombreux formats de fichiers notamment le netCDF. nCDF_BrowsernCDF_Browser software dans un fichier zip. est un explorateur de fichiers netCDF, écrit en IDL.
Champs d'utilisation Ce format est couramment utilisé dans des applications de climatologie, de météorologie et d'océanographie (ex., prévision météorologique, changement climatique et applications des S.I.G.).
Il s'agit d'un format de choix pour les entrées/sorties de nombreux S.I.G. et pour l'échange de données scientifiques. Le site définit le format NetCDF comme "une interface pour un accès aux données orienté tableaux et une bibliothèque qui fournit une implémentation de cette interface. La bibliothèque netCDF définit en sus un format de représentation des données scientifiques indépendant de l'architecture machine".
Parallel-NetCDF Il existe une extension du format netCDF pour le calcul parallèle appelé Parallel-NetCDF (ou PnetCDF) qui a été développé par l'Argonne National Laboratory et l'université NorthwesternParallel-NetCDF (or PnetCDF). Elle est construite au-dessus de MPI-IO, l'extension d'E/S des communications MPI. En utilisant les structures de données de haut niveau de netCDF, la bibliothèque PnetCDF peut utiliser les optimisations pour répartir la charge des lectures et des écritures du fichier sur de nombreux processeurs. PnetCDF peut seulement lire/écrire le format classique et son extension 64-bits. PnetCDF est incapable de lire ou d'écrire le modèle de données HDF5 disponible avec netCDF-4.0.
Les E/S parallèles sont disponibles depuis la version 4 de l'implémentation d'Unidata de la bibliothèque netCDF, mais uniquement pour le modèle de données HDF5.
Voir aussi Common Data Format (CDF) GRIB (GRIdded Binary) Hierarchical Data Format (HDF) FITS
Références
Liens externes netCDF project Le site officiel à l' (UCAR) netCDF-Java project à l'UCAR netCDF4 project à l'UCAR ncBrowse - Un visionneuse générique pour les fichiers netCDF - permet l'animation et la visualisation en 3D d'un grand nombre de type de fichiers netCDF « An Introduction to Distributed Visualization » le paragraphe 4.2 contient une comparaison entre le CDF, le HDF, et le netCDF NCO, un ensemble de programmes qui facilite la manipulation et analyse des fichiers netCDF dapper un serveur de données et DChart un client web pour visualiser les données OPeNDAP présentes dans le format netCDF Animating NetCDF Data in ArcMap ncWMS, un Web Map Service et un site internet pour la visualisation de données NetCDF (demo site) CF Conventions documents CF home page Overview of CF Projects and Groups using CF (partial) List of software utilities using netCDF files
Catégorie:Format de données numériques