HDF5 набор от данни (.hdf5)

The Стандарт

Йерархичният формат за данни 5 (Hierarchical Data Format 5 - HDF5) е водещата архитектура за управление на научни данни за масивни многоизмерни масиви, използвана широко в суперкомпютрите, климатичното моделиране, неврологията и машинното обучение.

Конвертиране на HDF5 към CSV

Безплатен конвертор от HDF5 към CSV в браузъра. Конвертирайте файлове незабавно на вашето устройство.

Инспектиране и метаданни

Операционните системи и файловите анализатори идентифицират HDF5 файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

100% поверително конвертиране в браузъра - файловете никога не напускат вашето устройство

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на хедъра (Magic Bytes)

Операционните системи и файловите анализатори идентифицират HDF5 файлове чрез проверка на началната двоична байтова последователност:

HEX ПОДПИС (ОФСЕТ 0):

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

ASCII ПРЕДСТАВЯНЕ: \x89HDF\r\n\x1a\n

Стандартизация: The HDF Group Open Standard Specification

Технически спецификации

Контейнерна архитектураHierarchical filesystem-like binary container organizing data into Groups (folders) and Datasets (multi-dimensional arrays) with attributes
КомпресияChunk-based compression filters: Gzip (Deflate), SZIP, Zstandard, Blosc, and LZF
Поредност на байтовете (Endianness)Declared in superblock (Little or Big-Endian)
Цветови пространстваN/A (Multi-dimensional Numerical Arrays)
Канали и структураHigh-dimensional scientific arrays, compound data types, and variable-length strings
Максимални размериPractically unlimited (supports 64-bit coordinates and petabyte-scale datasets)
ПрозрачностNone
Стрийминг и прогресивно зарежданеChunked storage enables partial hyper-slab slicing without loading full dataset into memory

Техническа сравнителна матрица: HDF5 спрямо конкуренти

Технически атрибутHDF5 (Текущ)NETCDFFITSZARR
Йерархична структураПълна POSIX-подобна файлова система (групи и масиви от данни)NetCDF-4 използва HDF5 под капакаФиксирани блок масиви и таблициОблачно-ориентиран формат на директории с отрязъци (chunks)
Нарязване на масиви от данниУлтрабързи бинарни четения на хиперслайсовеБързи четения на хиперслайсовеДиректно блоково индексиранеОблачни паралелни извличания на отрязъци
Употреба в машинното обучениеСтандарт за тегла на модели (Keras .h5)Рядко използван в изкуствения интелектНямаНарастваща употреба за тренировъчни данни за ИИ
Основна екосистемаNCSA, суперкомпютри, Python h5pyNOAA, метеорология, океанографияНАСА, астрономия, телескопиОблачно-ориентирана наука за данните

Често срещани режими на повреда и ръководство за хекс възстановяване

Грешка в Python h5py: 'Unable to open file (file signature not found)'.

Първопричина: Повреден 8-байтов суперблок в началото на файла.

Възстановяване: Проверете отместванията на суперблока (offsets) или възстановете масивите от данни с помощта на File2File HDF5 Tool.

Анализ на сигурността и вектори на атака към парсера

Официалната библиотека libhdf5 анализира сложни B-дървета и таблици с купчини (heap tables), където повредените отмествания са довели до уязвимости с препълване на купчината (heap overflow).

Известни вектори на атака

  • Препълване на буфера в купчината по време на обхождане на индекси на възли на B-дърво (напр. CVE-2021-37501).
  • Запис извън границите (out-of-bounds write) в персонализирани приставки за конвейер за филтриране на декомпресия.
  • Отказ от услуга чрез цикли с кръгови връзки между групи.

Защитни добри практики:

Исторически произход и етапи

2020HDF5 v1.12 въвежда конектори за виртуален слой на обектите (VOL) за облачно хранилище на обекти (Amazon S3).
2006Групата HDF се отделя от NCSA към Университета на Илинойс като независима фондация с нестопанска цел.
1998NCSA пуска HDF5, като напълно препроектира оригиналния HDF4, за да премахне ограниченията за файлове от 2 GB.

Основни предимства и плюсове

  • Пълна файлова система във файл: организира сложни многопетабайтови масиви от данни в именувани групи и масиви от данни (datasets) като директории.
  • Високоефективно нарязване на хиперслайсове (hyperslab slicing): прочетете малко 2D сечение от масивна 100-гигабайтова 5D матрица, без да четете целия файл.
  • Дълбока интеграция с модерен научен Python (h5py), MATLAB, R и паралелни суперкомпютри с висока производителност MPI.

Технически ограничения и минуси

  • Високата сложност на спецификацията затруднява независимите реализации на парсери извън официалната C библиотека libhdf5.
  • Ограниченията за заключване от един записващ в класическия HDF5 исторически усложняват едновременните работни потоци за запис.
  • Повредените суперблокове могат да направят цялото йерархично дърво недостъпно.

Интересни технически факти

  • Първите 8 магически байта на HDF5 файл (\x89HDF\r\n\x1a\n) нарочно повтарят подписа на PNG за откриване на повредени файлови прехвърляния.
  • Системата за наблюдение на Земята на НАСА (EOS) съхранява петабайти ежедневни сателитни климатични данни във формат HDF5.
  • Рамките за дълбоко обучение като Keras и TensorFlow популяризират HDF5 (.h5) за запазване на теглата на невронните мрежи.

Често задавани технически въпроси

Какво представлява HDF5 файлът?

HDF5 файлът е като цяла файлова система, съхранена в един единствен файл, проектиран за ефективно съхранение на масивни научни масиви, таблици и модели за машинно обучение.

Каква е разликата между .h5 и .hdf5?

Няма разлика; .h5 и .hdf5 са две различни файлови разширения за абсолютно същия формат Hierarchical Data Format 5.

Как мога да видят какво има вътре в един HDF5 файл?

Можете да инспектирате групите, наборите от данни и метаданните в който и да е HDF5 файл, като използвате HDFView, Python h5py или онлайн с File2File.app.