Set de date HDF5 (.hdf5)

The Standard

Hierarchical Data Format 5 (HDF5) este arhitectura principală de gestionare a datelor științifice pentru matrice multidimensionale masive, utilizată pe scară largă în supercalculatoare, modelare climatică, neuroștiință și învățare automată.

Convertește din HDF5 în CSV

Convertor gratuit din HDF5 în CSV direct în browser. Convertește fișiere instantaneu pe dispozitivul tău.

Inspectează și Metadate

Sistemele de operare și analizatoarele de fișiere identifică fișierele HDF5 prin inspectarea secvenței binare inițiale:

Selectează sau plasează fișierele aici

Conversie 100% privată în browser - fișierele nu părăsesc niciodată dispozitivul tău

sau lipește Ctrl+V
Garanție de confidențialitate cu zero transmisie în rețea: 0 octeți încărcați pe servere externe. Toată procesarea a avut loc local în sandbox-ul browserului tău.

Semnătura antetului la nivel de octet (Magic Bytes)

Sistemele de operare și analizatoarele de fișiere identifică fișierele HDF5 prin inspectarea secvenței binare inițiale:

SEMNĂTURĂ HEX (OFFSET 0):

89 48 44 46 0D 0A 1A 0A

REPREZENTARE ASCII: \x89HDF\r\n\x1a\n

Standardizare: The HDF Group Open Standard Specification

Specificații tehnice

Arhitectură containerHierarchical filesystem-like binary container organizing data into Groups (folders) and Datasets (multi-dimensional arrays) with attributes
CompresieChunk-based compression filters: Gzip (Deflate), SZIP, Zstandard, Blosc, and LZF
Endianitatea octețilorDeclared in superblock (Little or Big-Endian)
Spații de culoareN/A (Multi-dimensional Numerical Arrays)
Canale și structurăHigh-dimensional scientific arrays, compound data types, and variable-length strings
Dimensiuni maximePractically unlimited (supports 64-bit coordinates and petabyte-scale datasets)
TransparențăNone
Streaming și progresivChunked storage enables partial hyper-slab slicing without loading full dataset into memory

Matrice de comparație tehnică: HDF5 vs Competitori

Atribut tehnicHDF5 (Curent)NETCDFFITSZARR
Structură IerarhicăSistem de fișiere complet de tip POSIX (Grupuri și Seturi de date)NetCDF-4 folosește HDF5 dedesubtMatrice și tabele cu blocuri fixeFormat de director fragmentat nativ în cloud
Tăiere Set de DateCitiri hiperslab binare ultra-rapideCitiri hiperslab rapideIndexare directă a bloculuiPreluări de fragmente paralele în cloud
Utilizare Învățare AutomatăStandard pentru ponderi de modele (Keras .h5)Utilizat rar în IANiciunaUtilizare în creștere a seturilor de date de antrenament IA
Ecosistem PrincipalNCSA, supercalculatoare, Python h5pyNOAA, meteorologie, oceanografieNASA, astronomie, telescoapeȘtiința datelor nativă în cloud

Moduri comune de corupție și ghid de recuperare hexazecimală

Eroare Python h5py: 'Nu se poate deschide fișierul (semnătura fișierului nu a fost găsită)'.

Cauză principală: Superbloc de 8 octeți corupt la începutul fișierului.

Recuperare: Inspectați decalajele superblocului sau recuperați seturile de date utilizând instrumentul File2File HDF5.

Analiză de securitate și vectori de atac asupra parserului

Biblioteca oficială libhdf5 analizează arbori B complexi și tabele de heap în care decalajele corupte au cauzat vulnerabilități de depășire a heap-ului.

Vectori de atac cunoscuți

  • Depășire de memorie tampon a heap-ului în timpul traversării indexului nodului arborelui B (de ex., CVE-2021-37501).
  • Scriere în afara limitelor în pluginurile de conducte de filtrare a decompresiei personalizate.
  • Refuz de serviciu prin cicluri de legătură de grup circulare.

Cele mai bune practici de securitate:

Origini istorice și repere

2020HDF5 v1.12 introduce conectori Virtual Object Layer (VOL) pentru stocarea obiectelor în cloud (Amazon S3).
2006Grupul HDF se desprinde de NCSA al Universității din Illinois ca o fundație independentă non-profit.
1998NCSA lansează HDF5, reproiectând complet originalul HDF4 pentru a elimina limitele de fișiere de 2 GB.

Avantaje cheie și beneficii

  • Sistem de fișiere complet într-un singur fișier: organizează seturi de date complexe de multiple petabytes în grupuri numite și seturi de date, cum ar fi directoarele.
  • Tăiere hiperslab de înaltă performanță: citiți o mică felie 2D dintr-o matrice 5D masivă de 100 de gigabytes fără a citi fișierul complet.
  • Integrare profundă cu Python științific modern (h5py), MATLAB, R și supercalculatoare paralele MPI de înaltă performanță.

Limitări tehnice și dezavantaje

  • Complexitatea ridicată a specificațiilor face dificilă implementarea independentă a analizatoarelor în afara bibliotecii oficiale C libhdf5.
  • Limitările de blocare cu scriitor unic din HDF5 clasic au complicat istoric fluxurile de lucru de scriere concurentă.
  • Superblocurile corupte pot face ca întregul arbore ierarhic să devină inaccesibil.

Curiozități tehnice interesante

  • Primii 8 octeți magici ai unui fișier HDF5 (\x89HDF\r\n\x1a\n) oglindesc în mod deliberat semnătura PNG pentru a detecta transferurile corupte de fișiere.
  • Sistemul de observare a Pământului al NASA (EOS) stochează petabytes de date climatice zilnice prin satelit în format HDF5.
  • Cadrele de învățare profundă precum Keras și TensorFlow au popularizat HDF5 (.h5) pentru salvarea ponderilor rețelei neuronale.

Întrebări tehnice frecvente

Ce este un fișier HDF5?

Un fișier HDF5 este ca un sistem de fișiere complet stocat într-un singur fișier, conceput pentru a stoca eficient tablouri științifice masive, tabele și modele de învățare automată (machine learning).

Care este diferența dintre .h5 și .hdf5?

Nu există nicio diferență; .h5 și .hdf5 sunt două extensii de fișiere diferite pentru exact același format HDF5 (Hierarchical Data Format 5).

Cum pot vizualiza ce se află în interiorul unui fișier HDF5?

Poți inspecta grupurile, seturile de date și metadatele din orice fișier HDF5 folosind HDFView, Python h5py sau online cu File2File.app.