مجموعه داده HDF5 (.hdf5)

The استاندارد

فرمت داده‌های سلسله‌مراتبی ۵ (HDF5) معماری برتر مدیریت داده‌های علمی برای آرایه‌های چندبعدی عظیم است که به‌طور گسترده در محاسبات فوق‌پیشرفته، مدل‌سازی آب و هوا، علوم اعصاب و یادگیری ماشین استفاده می‌شود.

تبدیل HDF5 به CSV

مبدل رایگان HDF5 به CSV درون مرورگر. فایل‌ها را فورا روی دستگاه خود تبدیل کنید.

بررسی و فراداده

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های HDF5 را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

انتخاب یا رها کردن فایل‌ها در اینجا

تبدیل ۱۰۰٪ خصوصی در مرورگر - فایل‌ها هرگز دستگاه شما را ترک نمی‌کنند

یا جای‌گذاری کنید Ctrl+V
تضمین حریم خصوصی بدون انتقال شبکه: صفر بایت به سرورهای خارجی آپلود می‌شود. تمام پردازش‌ها به صورت محلی در سندباکس مرورگر شما انجام شد.

امضای هدر در سطح بایت (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 در لایه زیرین استفاده می‌کندآرایه‌ها و جداول بلوک ثابتفرمت دایرکتوری قطعه‌بندی شده بومی ابری
برش‌دهی مجموعه دادهخوانش‌های هیپراسلاپ باینری فوق‌العاده سریعخوانش‌های هیپراسلاپ سریعفهرست‌بندی بلوک مستقیمفچ‌های قطعه‌ای موازی ابری
استفاده در یادگیری ماشیناستاندارد برای وزن‌های مدل (Keras .h5)به ندرت در هوش مصنوعی استفاده می‌شودهیچ‌کداماستفاده رو به رشد در مجموعه داده‌های آموزشی هوش مصنوعی
اکوسیستم اصلیNCSA، محاسبات فوق‌پیشرفته، پایتون h5pyNOAA، هواشناسی، اقیانوس‌شناسیناسا، نجوم، تلسکوپ‌هاعلم داده‌های بومی ابری

حالت‌های رایج خرابی و راهنمای بازیابی هگز

خطای پایتون h5py: 'قادر به باز کردن فایل نیست (امضای فایل یافت نشد)'.

علت ریشه‌ای: سوپربلاک ۸ بایتی خراب در ابتدای فایل.

بازیابی: افست‌های سوپربلاک را بازرسی کنید یا مجموعه داده‌ها را با استفاده از ابزار HDF5 در File2File بازیابی کنید.

تحلیل امنیتی و بردارهای حمله تجزیه‌کننده (Parser)

کتابخانه رسمی libhdf5 درختان B پیچیده و جداول هیپ را تجزیه می‌کند که در آن افست‌های خراب باعث آسیب‌پذیری‌های سرریز هیپ شده‌اند.

بردارهای حمله شناخته‌شده

  • سرریز بافر هیپ در طول پیمایش شاخص گره درخت B (به عنوان مثال CVE-2021-37501).
  • نوشتن خارج از محدوده در پلاگین‌های پایپ‌لاین فیلتر رفع فشرده‌سازی سفارشی.
  • انکار سرویس از طریق چرخه‌های پیوند گروهی دایره‌ای.

بهترین روش‌های پدافندی:

تاریخچه و نقاط عطف

2020نسخه ۱.۱۲ از HDF5 اتصالات لایه شیء مجازی (VOL) را برای ذخیره‌سازی ابری شیء (آمازون S3) معرفی می‌کند.
2006گروه HDF از NCSA دانشگاه ایلی‌نوی به عنوان یک بنیاد مستقل غیرانتفاعی جدا شد.
1998NCSA فرمت HDF5 را منتشر کرد و HDF4 اصلی را به طور کامل بازطراحی نمود تا محدودیت فایل ۲ گیگابایتی را از بین ببرد.

مزایا و نقاط قوت کلیدی

  • سیستم فایل کامل در یک فایل: مجموعه داده‌های چند پتابایتی پیچیده را در گروه‌ها و مجموعه داده‌های نام‌گذاری شده مانند دایرکتوری‌ها سازماندهی می‌کند.
  • برش‌دهی هیپراسلاپ با کارایی بالا: یک برش دوبعدی کوچک را از یک ماتریس پنج‌بعدی ۱۰۰ گیگابایتی عظیم بدون خواندن کل فایل بخوانید.
  • یکپارچه‌سازی عمیق با پایتون علمی مدرن (h5py)، متلب (MATLAB)، آر (R) و ابررایانه‌های موازی MPI با کارایی بالا.

محدودیت‌ها و معایب فنی

  • پیچیدگی بالای مشخصات، پیاده‌سازی‌های مستقل تجزیه‌کننده را در خارج از کتابخانه رسمی C کتابخانه libhdf5 دشوار می‌کند.
  • محدودیت‌های قفل‌گذاری تک‌نویسنده در HDF5 کلاسیک از نظر تاریخی جریان‌های کاری نوشتن همزمان را پیچیده کرده بود.
  • سوپربلاکر‌های خراب می‌توانند کل درخت سلسله‌مراتبی را غیرقابل دسترس کنند.

نکات فنی جالب

  • ۸ بایت جادویی اول یک فایل HDF5 (\x89HDF\r\n\x1a\n) به طور عمدی امضای PNG را منعکس می‌کند تا انتقال فایل‌های خراب را شناسایی کند.
  • سیستم رصد زمین ناسا (EOS) پابت‌ها داده‌های اقلیمی ماهواره‌ای روزانه را با فرمت HDF5 ذخیره می‌کند.
  • فریم‌ورک‌های یادگیری عمیق مانند کراس (Keras) و تنسورفلو (TensorFlow) فرمت HDF5 (.h5) را برای ذخیره وزن‌های شبکه عصبی محبوب کردند.

سوالات فنی متداول

فایل HDF5 چیست؟

یک فایل HDF5 مانند یک سیستم فایل کامل است که در داخل یک فایل واحد ذخیره می‌شود و برای ذخیره کارآمد آرایه‌های علمی عظیم، جداول و مدل‌های یادگیری ماشین طراحی شده است.

تفاوت بین .h5 و .hdf5 چیست؟

هیچ تفاوتی وجود ندارد؛ .h5 و .hdf5 دو پسوند فایل مختلف برای دقیقاً همان فرمت داده‌های سلسله‌مراتب ۵ (Hierarchical Data Format 5) هستند.

چگونه می‌توانم محتویات داخل یک فایل HDF5 را ببینم؟

شما می‌توانید گروه‌ها، مجموعه داده‌ها و فراداده‌های (Metadata) داخل هر فایل HDF5 را با استفاده از HDFView، کتابخانه h5py پایتون، یا به صورت آنلاین با File2File.app بررسی کنید.