HDF5 Veri Seti (.hdf5)

The Standart

Hiyerarşik Veri Formatı 5 (HDF5), süper bilgisayarlarda, iklim modellemesinde, sinirbilimde ve makine öğreniminde yaygın olarak kullanılan, devasa çok boyutlu diziler için birincil bilimsel veri yönetimi mimarisidir.

HDF5 biçimini CSV biçimine dönüştür

Tarayıcında HDF5 biçimini CSV biçimine ücretsiz dönüştür. Dosyaları cihazında anında dönüştür.

İncele ve Meta Veriler

İşletim sistemleri ve dosya çözümleyicileri, HDF5 dosyalarını başlangıçtaki ikili sihirli bayt dizisini inceleyerek tanımlar:

Dosyaları buraya seç veya bırak

Özel - dosyalar cihazınızdan asla ayrılmaz

veya yapıştır Ctrl+V
Sıfır Ağ Aktarımı Gizlilik Garantisi: Harici sunuculara 0 bayt yüklendi. Tüm işlemler tarayıcındaki korumalı alanda (sandbox) yerel olarak gerçekleştirildi.

Bayt düzeyinde başlık imzası (sihirli baytlar)

İşletim sistemleri ve dosya çözümleyicileri, HDF5 dosyalarını başlangıçtaki ikili sihirli bayt dizisini inceleyerek tanımlar:

HEX İMZASI (OFSET 0):

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

ASCII GÖSTERİMİ: \x89HDF\r\n\x1a\n

Standartlaştırma: The HDF Group Open Standard Specification

Teknik Özellikler

Kapsayıcı mimarisiVerileri öznitelikli Gruplar (klasörler) ve Veri Kümeleri (çok boyutlu diziler) halinde düzenleyen, dosya sistemi benzeri hiyerarşik ikili kapsayıcı
SıkıştırmaParça tabanlı sıkıştırma filtreleri: Gzip (Deflate), SZIP, Zstandard, Blosc ve LZF
Bayt Düzeni (Endianness)Declared in superblock (Little or Big-Endian)
Renk UzaylarıN/A (Multi-dimensional Numerical Arrays)
Kanallar ve YapıYüksek boyutlu bilimsel diziler, bileşik veri türleri ve değişken uzunluklu dizgeler
Maksimum BoyutlarPratikte sınırsız (64 bit koordinatları ve petabayt ölçekli veri kümelerini destekler)
ŞeffaflıkNone
Akış ve Aşamalı İşlemeParçalı depolama, veri kümesinin tamamını belleğe yüklemeden kısmi hiper dilimleme olanağı sağlar

Teknik karşılaştırma matrisi: HDF5 ve rakipleri

Teknik NitelikHDF5 (Güncel)NETCDFFITSZARR
Hiyerarşi YapısıTam POSIX benzeri dosya sistemi (Gruplar ve Veri Kümeleri)NetCDF-4 altta HDF5 kullanırSabit blok dizileri ve tablolarBulut için tasarlanmış, veri parçalarına bölünmüş dizin biçimi
Veri Kümesi DilimlemeUltra hızlı ikili hiperdilim okumalarıHızlı hiperdilim okumalarıDoğrudan blok indekslemeBulut paralel yığın getirmeleri
Makine Öğrenimi KullanımıModel ağırlıkları için standart (Keras .h5)Yapay zekada nadiren kullanılırYokBüyüyen yapay zeka eğitim veri kümesi kullanımı
Birincil EkosistemNCSA, süper bilgisayar, Python h5pyNOAA, meteoroloji, oşinografiNASA, astronomi, teleskoplarBulut tabanlı veri bilimi

Yaygın Bozulma Modları ve Hex Kurtarma Kılavuzu

Python h5py hatası: 'Dosya açılamıyor (dosya imzası bulunamadı)'.

Kök Neden: Dosyanın başında bozuk 8 baytlık süper blok.

Kurtarma: File2File.app HDF5 Aracı ile süper blok ofsetlerini incele veya veri kümelerini kurtar.

Güvenlik Analizi ve Ayrıştırıcı Saldırı Vektörleri

Resmi libhdf5 kütüphanesi, bozuk uzaklıkların yığın taşması güvenlik açıklarına neden olduğu karmaşık B ağaçlarını ve yığın tablolarını ayrıştırır.

Bilinen Saldırı Vektörleri

  • B ağacı düğüm indekste gezinme sırasında yığın arabelleği taşması (örn. CVE-2021-37501).
  • Özel sıkıştırma açma filtresi işlem hattı eklentilerinde sınır dışı yazma.
  • Dairesel grup bağlantı döngüleri aracılığıyla hizmet reddi.

Savunmaya yönelik en iyi uygulamalar: Güvenilmeyen HDF5 dosyalarını, bellek kullanımı sınırlanmış yalıtılmış WebAssembly motorlarında işle.

Tarihsel kökenler ve önemli dönüm noktaları

2020HDF5 v1.12, bulut nesne depolama (Amazon S3) için Sanal Nesne Katmanı (VOL) bağlayıcılarını sunar.
2006HDF Grubu, bağımsız bir kar amacı gütmeyen vakıf olarak Illinois Üniversitesi NCSA'dan ayrılır.
1998NCSA, 2 GB dosya sınırlarını ortadan kaldırmak için orijinal HDF4'ü tamamen yeniden tasarlayarak HDF5'i yayımlar.

Temel Avantajlar ve Artılar

  • Dosya içinde eksiksiz dosya sistemi: karmaşık çok petabaytlık veri kümelerini dizinler gibi adlandırılmış gruplarda ve veri kümelerinde düzenler.
  • Yüksek performanslı hiperdilim dilimleme: tam dosyayı okumak zorunda kalmadan devasa 100 gigabaytlık 5D matristen küçük bir 2D dilim okuyun.
  • Modern bilimsel Python (h5py), MATLAB, R ve yüksek performanslı MPI-paralel süper bilgisayarlarla derin entegrasyon.

Teknik Kısıtlamalar ve Eksiler

  • Yüksek spesifikasyon karmaşıklığı, resmi libhdf5 C kütüphanesinin dışında bağımsız ayrıştırıcı uygulamalarını zorlaştırır.
  • Klasik HDF5'teki tek yazarlı kilitleme sınırlamaları, tarihsel olarak eşzamanlı yazma iş akışlarını karmaşıklaştırmıştır.
  • Bozuk süper bloklar tüm hiyerarşik ağaca erişilemez hale getirebilir.

İlginç Teknik Bilgiler

  • HDF5 imzası PNG’den türetilmiştir; biçimi tanımlar ve yaygın aktarım hatalarını saptamaya yardımcı olur.
  • NASA'nın Dünya Gözlem Sistemi (EOS), günlük uydu iklim verilerinin petabaytlarını HDF5 formatında depolar.
  • Keras ve TensorFlow gibi derin öğrenme çerçeveleri, sinir ağı ağırlıklarını kaydetmek için HDF5'i (.h5) popülerleştirmiştir.

Sıkça Sorulan Teknik Sorular

HDF5 dosyası nedir?

HDF5 dosyası, devasa bilimsel dizileri, tabloları ve makine öğrenimi modellerini verimli bir şekilde depolamak için tasarlanmış, tek bir dosya içinde saklanan eksiksiz bir dosya sistemi gibidir.

.h5 ve .hdf5 arasındaki fark nedir?

Hiçbir fark yoktur; .h5 ve .hdf5, tamamen aynı Hiyerarşik Veri Formatı 5 (Hierarchical Data Format 5) için iki farklı dosya uzantısıdır.

Bir HDF5 dosyasının içinde ne olduğunu nasıl görebilirim?

HDFView, Python h5py veya çevrimiçi File2File.app ile herhangi bir HDF5 dosyasındaki grupları, veri kümelerini ve meta verileri inceleyebilirsin.