Was ist das HDF-Dateiformat?
.hdf-Dateien speichern wissenschaftliche Datensätze im binären HDF4 (Hierarchical Data Format Version 4) Container, der 1988 vom National Center for Supercomputing Applications (NCSA) an der University of Illinois entwickelt wurde. HDF4 wurde entworfen, um Wissenschaftlern und Ingenieuren das Speichern heterogener numerischer Daten - mehrdimensionale Arrays, Rasterbilder, Tabellen und Metadaten - in einer einzigen portablen Datei zu ermöglichen.
Das Format wird durch die Vier-Byte-Magic-Sequenz 0E 03 13 01 identifiziert. Intern verwendet HDF4 eine flache Tag-und-Referenz-Architektur: Jedes Datenobjekt wird durch einen 12-Byte-Deskriptor (Tag, Referenznummer, Offset, Länge) in einem Data Descriptor Block beschrieben. Die Kompression ist pro Datensatz optional und kann RLE, SKPHUFF (modifiziertes Huffman) oder DEFLATE (gzip) verwenden. Eine harte Grenze von 2 GB pro Datenobjekt ergibt sich aus den vorzeichenbehafteten 32-Bit-Offset-Feldern.
NASA verteilt Fernerkundungsprodukte der Terra- und Aqua-Satelliten im HDF4-basierten HDF-EOS-Format unter Verwendung der Endung .hdf. HDF4 wurde durch HDF5 abgelöst - ein komplettes Redesign, das 1998 veröffentlicht wurde - welches heute für neue wissenschaftliche Arbeiten empfohlen wird. Beide Formate können die Endung .hdf tragen; Magic Bytes unterscheiden sie zuverlässig (HDF4: 0E 03 13 01; HDF5: 89 48 44 46).
Sicherheit
RISIKO: LOWHDF4 ist ein passiver binärer Datencontainer ohne ausführbaren Code. Das Öffnen ist sicher. Sehr große Datensätze können den RAM erschöpfen - verwenden Sie pyhdf oder MATLAB, um Teilmengen zu lesen. Manipulierte HDF4-Dateien könnten Fehler in älteren Versionen von libhdf4 auslösen; halten Sie Ihre Tools aktuell. Einige HDF4-Bibliotheksversionen (vor 4.2.15) hatten CVE-bewertete Sicherheitslücken - aktualisieren Sie auf 4.2.16+.
Formatdetails
kurz gefasst- HDF5 Datei (gelegentlich) - Einige Tools speichern HDF5-Daten mit der Endung .hdf; verwenden Sie Magic Bytes, um HDF4 (0x0E031301) von HDF5 (0x89HDF...) zu unterscheiden.
Programme zum Öffnen von HDF-Dateien
Technische Details
technische Spezifikation| Magic Bytes | 0E 03 13 01 bei Offset 0 |
| Format-Typ | Binärer wissenschaftlicher Datencontainer (flache Tag/Referenz-Architektur, HDF4) |
| Byte-Reihenfolge | Nativ Big-Endian; jedes Datenobjekt speichert seinen eigenen Deskriptor für die Byte-Reihenfolge |
| Kompression | Optional pro Datensatz: RLE, SKPHUFF (modifiziertes Huffman) oder DEFLATE (gzip) |
| Datentypen | Mehrdimensionale Arrays (Scientific Datasets), Rasterbilder (1-32 bpp), Tabellen (Vdata), Gruppen (Vgroups), Annotationen |
| Max. Objektgröße | ~2 GB pro Datenobjekt (Einschränkung durch vorzeichenbehaftetes 32-Bit-Offset-Feld) |
| Max. Dimensionen | Bis zu 32 Dimensionen pro Scientific Dataset |
| Max. Objektreferenzen | 65.535 pro Tag-Typ (16-Bit-Referenznummern) |
| Architektur | Flache Tag/Referenz - Objekte werden durch 12-Byte-Deskriptoren (Tag, Ref, Offset, Länge) in Data Descriptor Blocks beschrieben |
| Primäre wissenschaftliche Nutzung | NASA EOS Fernerkundung (Terra, Aqua Satelliten); Klima- und Atmosphärenforschung |
| Abgelöst durch | HDF5 (.h5 / .hdf5), ein komplettes Redesign von 1998; nicht Byte-kompatibel mit HDF4 |
| HDF4 Wartungsstatus | Nur Sicherheitsfixes seit ca. 2015; keine neuen Funktionen hinzugefügt |
| Konvertierungstool | h4h5tools (The HDF Group) konvertiert HDF4-Dateien nach HDF5 |
| Veröffentlicht | 1988 (HDF 1.0 by NCSA, University of Illinois) |
| Neueste Version | HDF4 4.2.16 (2022); HDF4 maintenance-only since HDF5 became primary |
| Offener Standard | Ja · lizenzgebührenfrei |
| Spezifikation | support.hdfgroup.org |
HDF-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu HDF-Dateien.