Che cos'è il formato di file HDF?
I file .hdf memorizzano dataset scientifici nel contenitore binario HDF4 (Hierarchical Data Format versione 4), sviluppato nel 1988 dal National Center for Supercomputing Applications (NCSA) presso l'Università dell'Illinois. HDF4 è stato progettato per consentire a scienziati e ingegneri di archiviare dati numerici eterogenei - array multidimensionali, immagini raster, tabelle e metadati - in un unico file portatile.
Il formato è identificato dalla sequenza magica di quattro byte 0E 03 13 01. Internamente, HDF4 utilizza un'architettura piatta «tag-and-reference»: ogni oggetto dati è descritto da un descrittore di 12 byte (tag, numero di riferimento, offset, lunghezza) in un blocco descrittore dati (Data Descriptor Block). La compressione è opzionale per ogni dataset e può utilizzare RLE, SKPHUFF (Huffman modificato) o DEFLATE (gzip). Un limite rigido di 2 GB per oggetto dati deriva dai campi offset con segno a 32 bit.
La NASA distribuisce prodotti di telerilevamento dai satelliti Terra e Aqua nel formato HDF-EOS basato su HDF4 utilizzando l'estensione .hdf. HDF4 è stato sostituito da HDF5 - una riprogettazione completa rilasciata nel 1998 - che è ora raccomandata per i nuovi lavori scientifici. Entrambi i formati possono riportare l'estensione .hdf; i magic bytes li distinguono in modo affidabile (HDF4: 0E 03 13 01; HDF5: 89 48 44 46).
Sicurezza e incolumità
RISCHIO: LOWHDF4 è un contenitore di dati binari passivo senza codice eseguibile. Sicuro da aprire. Dataset molto grandi possono esaurire la RAM - usa pyhdf o MATLAB per leggere sottoinsiemi. File HDF4 malformati potrebbero innescare bug nelle versioni precedenti di libhdf4; mantieni gli strumenti aggiornati. Alcune versioni della libreria HDF4 (precedenti alla 4.2.15) presentavano vulnerabilità di sicurezza classificate CVE - aggiorna alla 4.2.16+.
Dettagli del formato
in sintesi- File HDF5 (occasionalmente) - Alcuni strumenti salvano i dati HDF5 con l'estensione .hdf; usa i magic bytes per distinguere HDF4 (0x0E031301) da HDF5 (0x89HDF...).
Programmi che aprono file HDF
Dettagli tecnici
specifiche approfondite| Magic bytes | 0E 03 13 01 all'offset 0 |
| Tipo di formato | Contenitore di dati scientifici binari (architettura piatta tag/reference, HDF4) |
| Ordine dei byte | Big-endian nativo; ogni oggetto dati memorizza il proprio descrittore dell'ordine dei byte |
| Compressione | Opzionale per dataset: RLE, SKPHUFF (Huffman modificato) o DEFLATE (gzip) |
| Tipi di dati | Array multidimensionali (Scientific Datasets), immagini raster (1-32 bpp), tabelle (Vdata), gruppi (Vgroups), annotazioni |
| Dimensione massima oggetto | ~2 GB per oggetto dati (limitazione del campo offset con segno a 32 bit) |
| Dimensioni massime | Fino a 32 dimensioni per Scientific Dataset |
| Riferimenti massimi oggetto | 65.535 per tipo di tag (numeri di riferimento a 16 bit) |
| Architettura | Piatta tag/reference - oggetti descritti da descrittori a 12 byte (tag, ref, offset, lunghezza) in Data Descriptor Blocks |
| Uso scientifico primario | Telerilevamento NASA EOS (satelliti Terra, Aqua); ricerca climatica e atmosferica |
| Sostituito da | HDF5 (.h5 / .hdf5), una riprogettazione completa rilasciata nel 1998; non compatibile a livello di byte con HDF4 |
| Stato manutenzione HDF4 | Solo correzioni di sicurezza dal ~2015; nessuna nuova funzionalità aggiunta |
| Strumento di conversione | h4h5tools (The HDF Group) converte i file HDF4 in HDF5 |
| Rilasciato | 1988 (HDF 1.0 by NCSA, University of Illinois) |
| Ultima versione | HDF4 4.2.16 (2022); HDF4 maintenance-only since HDF5 became primary |
| Standard aperto | Sì · royalty-free |
| Specifica | support.hdfgroup.org |
Conversioni HDF
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file HDF.