HDF5 nabor podatkov (.hdf5)

The Standard

Hierarhični podatkovni format 5 (HDF5) je vodilna arhitektura za upravljanje znanstvenih podatkov za obsežne večdimenzionalne tabele, ki se obsežno uporablja v superračunalništvu, podnebnem modeliranju, nevroznanosti in strojnem učenju.

Pretvori HDF5 v CSV

Brezplačen pretvornik iz HDF5 v CSV v brskalniku. Pretvorite datoteke takoj v svoji napravi.

Pregled in metapodatki

Operacijski sistemi in analizatorji datotek identificirajo datoteke HDF5 s pregledom vodilnega binarnega zaporedja bajtov:

Izberite ali povlecite datoteke sem

100-odstotno zasebna pretvorba v brskalniku - datoteke nikoli ne zapustijo vaše naprave

ali prilepi Ctrl+V
Jamstvo o zasebnosti brez prenosa podatkov v omrežje: 0 bajtov naloženih na zunanje strežnike. Vsa obdelava je potekala lokalno v varnem območju vašega brskalnika.

Podpis glave na ravni bajtov (Čarobni bajti)

Operacijski sistemi in analizatorji datotek identificirajo datoteke HDF5 s pregledom vodilnega binarnega zaporedja bajtov:

PODPIS HEX (ZAMIK 0):

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

REPREZENTACIJA ASCII: \x89HDF\r\n\x1a\n

Standardizacija: The HDF Group Open Standard Specification

Tehnične specifikacije

Arhitektura vsebnikaHierarchical filesystem-like binary container organizing data into Groups (folders) and Datasets (multi-dimensional arrays) with attributes
StiskanjeChunk-based compression filters: Gzip (Deflate), SZIP, Zstandard, Blosc, and LZF
Vrstni red bajtovDeclared in superblock (Little or Big-Endian)
Barvni prostoriN/A (Multi-dimensional Numerical Arrays)
Kanali in strukturaHigh-dimensional scientific arrays, compound data types, and variable-length strings
Največje dimenzijePractically unlimited (supports 64-bit coordinates and petabyte-scale datasets)
ProsojnostNone
Pretočno in progresivno predvajanjeChunked storage enables partial hyper-slab slicing without loading full dataset into memory

Tehnična primerjalna matrika: HDF5 proti konkurenci

Tehnični atributHDF5 (Trenutno)NETCDFFITSZARR
Hierarhična strukturaPoln datotečni sistem v slogu POSIX (skupine in nabori podatkov)NetCDF-4 uporablja HDF5 v ozadjuTabele in tabele s fiksnimi blokiOblikovanje razdeljenih imenikov v oblaku
Rezanje naborov podatkovIzjemno hitro branje binarnih hiperslabovHitro branje hiperslabovNeposredno indeksiranje blokovVzporedno pridobivanje kosov v oblaku
Uporaba pri strojnem učenjuStandard za uteži modelov (Keras .h5)Redko se uporablja v umetni inteligenciBrezNaraščajoča uporaba za podatke za usposabljanje umetne inteligence
Primarni ekosistemNCSA, superračunalništvo, Python h5pyNOAA, meteorologija, oceanografijaNASA, astronomija, teleskopiPodatkovna znanost za oblak

Pogosti načini okvar in vodič za heksadecimalno obnovo

Napaka v Pythonu h5py: 'Unable to open file (file signature not found)'.

Glavni vzrok: Poškodovan 8-bajteni nadglavni blok (superblock) na začetku datoteke.

Sanacija: Preglejte odmike nadglavnega bloka ali obnovite nabor podatkov z orodjem File2File HDF5 Tool.

Varnostna analiza in napadalni vektorji razčlenjevalnika

Uradna knjižnica libhdf5 razčlenjuje zapletena drevesa B in tabele pomnilniških kupov, kjer so poškodovani odmiki povzročili ranljivosti prelivke pomnilniškega kupa (heap overflow).

Znani vektorji napada

  • Preliv pomnilniškega kupa med prehodom indeksa vozlišča drevesa B (npr. CVE-2021-37501).
  • Pisanje izven meja v vtičnikih cevovoda filtrov za dekompresijo po meri.
  • Zavrnitev storitve prek krožnih ciklov povezovanja skupin.

Obrambne najboljše prakse:

Zgodovinski izvor in mejniki

2020HDF5 v1.12 uvaja priključke sloja navideznih objektov (VOL) za shrambo v oblaku (Amazon S3).
2006Skupina HDF Group se odcepi od Illinoiske univerze NCSA kot neodvisna neprofitna fundacija.
1998NCSA izda HDF5 in popolnoma preoblikuje prvotni HDF4, da bi odpravil omejitve datotek velikosti 2 GB.

Ključne prednosti

  • Celoten datotečni sistem v datoteki: organizira zapletene nabore podatkov velikosti več petabajtov v imenovane skupine in nabore podatkov, podobno kot v imenikih.
  • Visoko zmogljivo rezanje hiperslabov: preberite majhno 2D rezino iz obsežne 100-gigabajtne 5D matrike, ne da bi brali celotno datoteko.
  • Globoka integracija s sodobnim znanstvenim Pythonom (h5py), MATLAB-om, jezikom R in visoko zmogljivimi vzporednimi superračunalniki MPI.

Tehnične omejitve in slabosti

  • Velika kompleksnost specifikacije otežuje neodvisne izvedbe razčlenjevalnikov zunaj uradne knjižnice libhdf5 v jeziku C.
  • Omejitve zaklepanja za enega pisca v klasičnem HDF5 so zgodovinsko zapletle sočasne poteke pisanja.
  • Poškodovane nadglavne bloke (superblock) lahko celotno hierarhično drevo naredijo nedostopno.

Zanimive tehnične malenkosti

  • Prvih 8 čarobnih bajtov datoteke HDF5 (\x89HDF\r\n\x1a\n) namerno zrcali podpis formata PNG za zaznavanje poškodovanih prenosov datotek.
  • Nasin opazovalni sistem Zemlje (EOS) shranjuje petabajte dnevnih satelitskih podnebnih podatkov v formatu HDF5.
  • Okvirji za globoko učenje, kot sta Keras in TensorFlow, so popularizirali HDF5 (.h5) za shranjevanje uteži nevronskih mrež.

Pogosta tehnična vprašanja

Kaj je datoteka HDF5?

Datoteka HDF5 je kot celoten datotečni sistem, shranjen v eni sami datoteki, zasnovan za učinkovito shranjevanje obsežnih znanstvenih matrik, tabel in modelov strojnega učenja.

Kakšna je razlika med .h5 in .hdf5?

Razlike ni; .h5 in .hdf5 sta dve različni priponi datotek za povsem isto Hierarhično podatkovno obliko 5 (Hierarchical Data Format 5).

Kako si lahko ogledam vsebino datoteke HDF5?

Skupine, nize podatkov in metapodatke znotraj katere koli datoteke HDF5 si lahko ogledate s programom HDFView, knjižnico Python h5py ali prek spleta s pomočjo File2File.app.