Grundlagen der netCDF-Datenspeicherung
Speicherung von netCDF-Daten
Die Daten in einer netCDF-Datei werden als Arrays gespeichert. Beispiel: Die Temperaturschwankungen an einem Ort im Zeitverlauf werden als eindimensionales Array gespeichert. Die Temperatur in einem Gebiet innerhalb eines bestimmten Zeitraums wird als zweidimensionales Array gespeichert.
Dreidimensionale Daten (3D), z. B. Temperaturschwankungen in einem Gebiet in einem bestimmten Zeitraum, oder vierdimensionale Daten (4D), z. B. die Temperaturschwankungen in einem bestimmten Gebiet in Abhängigkeit von der Höhe und der Zeit, werden als Reihe von zweidimensionalen Arrays gespeichert.
3D-Daten: Daten in einem Gebiet, die sich im Zeitverlauf ändern.
4D-Daten: Daten in einem Gebiet, die sich in Abhängigkeit von der Zeit und der Höhe ändern.
Grundlegende Komponenten einer netCDF-Datei
Eine netCDF-Datei enthält Dimensionen, Variablen und Attribute. Mithilfe dieser Komponenten werden die Bedeutung der Daten und die Beziehungen zwischen den Datenfeldern in einem array-orientierten Dataset aufgezeichnet. In der folgenden Abbildung wird die Struktur einer netCDF-Datei in der CDL-Notation (Network Common Data Form Language) veranschaulicht. CDL ist das ASCII-Format, mit dem der Inhalt einer netCDF-Datei beschrieben wird.
Die Namen von Dimensionen, Variablen und Attributen bestehen aus willkürlichen Folgen alphanumerischer Zeichen (einschließlich Unterstrich und Bindestrich), und sie beginnen mit einem Buchstaben oder einem Unterstrich. Mit einem Unterstrich beginnende Namen sind jedoch für die Verwendung durch das System reserviert. Bei netCDF-Namen wird die Groß- und Kleinschreibung berücksichtigt.
Dimensionen
Eine netCDF-Dimension weist sowohl einen Namen als auch eine Größe auf. Eine Dimensionsgröße ist ein willkürlicher positiver Integer-Wert. Nur eine Dimension in einer netCDF-Datei kann die Größe UNLIMITED aufweisen. Eine solche Dimension wird als unbegrenzte Dimension oder Datensatzdimension bezeichnet. Eine Variable mit einer unbegrenzten Dimension kann innerhalb der Dimension eine beliebige Größe annehmen.
Mit einer Dimension kann eine reale physische Messgröße dargestellt werden, beispielsweise Zeit, Breite, Länge oder Höhe. Mit einer Dimension können auch andere Größen indiziert werden, z. B. Stations- oder Modellausführungsnummer. Beim Angeben eines Variablen-Shapes kann dieselbe Dimension mehrmals verwendet werden.
Variablen
Eine Variable stellt ein Array von Werten desselben Typs dar. In einer netCDF-Datei sind die meisten Daten in Variablen gespeichert. Eine Variable weist einen Namen, einen Datentyp und ein Shape auf, das beim Erstellen der Variablen von der Liste der Dimensionen beschrieben wird. Die Anzahl der Dimensionen wird als Rang (oder Dimensionalität) bezeichnet. Eine Skalarvariable weist den Rang 0, ein Vektor den Rang 1 und eine Matrix den Rang 2 auf. Eine Variable kann auch zugeordnete Attribute aufweisen, die nach ihrer Erstellung hinzugefügt, gelöscht und geändert werden können.
Koordinatenvariablen
Eine eindimensionale Variable, die denselben Namen wie eine Dimension aufweist, wird als Koordinatenvariable bezeichnet. Ihr wird eine Dimension mit mindestens einer Datenvariablen zugeordnet. Typischerweise definiert sie eine physische Koordinate, die der betreffenden Dimension entspricht.
Koordinatenvariablen haben für die netCDF-Bibliothek keine spezielle Bedeutung. Die Software, die diese Bibliothek verwendet, muss Koordinatenvariablen jedoch auf besondere Weise verarbeiten.
Attribute
In NetCDF-Attributen sind zusätzliche Daten oder Metadaten gespeichert. Die meisten Attribute stellen Informationen zu einer bestimmten Variablen bereit. Diese Attribute werden mit dem Namen der Variablen und dem Namen des Attributs selbst angegeben.
Attribute, die Informationen über die gesamte netCDF-Datei liefern, werden als globale Attribute bezeichnet. Diese Attribute werden mit dem Attributnamen sowie einem leeren Variablennamen (in CDL) oder einer speziellen NULL-Variablen-ID (in C oder Fortran) angegeben.
Konventionen
Die Konventionen definieren Metadaten, die eine definitive Beschreibung der Daten in den einzelnen Variablen sowie deren räumliche und zeitbezogene Eigenschaften bereitstellen. Anhand einer Konvention können Benutzer von Daten aus verschiedenen Quellen bestimmen, welche Mengen miteinander verglichen werden können. Der Name der Konvention wird in einer netCDF-Datei als globales Attribut dargestellt.
Weitere Informationen zu netCDF-Konventionen
Derzeit werden in ArcGIS die Konventionen Climate and Forecast (CF) und "Cooperative Ocean/Atmosphere Research Data Service" (COARDS) unterstützt. NetCDF-Dateien, die gemäß anderen Konventionen erstellt wurden, können jedoch u. U. ebenfalls verwendet werden.