מערך נתונים HDF5 (.hdf5)

The תקן

פורמט הנתונים ההיררכי 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 מתחת מכסה המנועמערכים וטבלאות בלוקים קבועיםפורמט ספרייה מקוטע מותאם לענן (cloud-native)
חיתוך מערך נתוניםקריאות היפרסלאב בינאריות מהירות במיוחדקריאות היפרסלאב מהירותאינדוקס בלוקים ישירשליפות מקטעים במקביל מהענן
שימוש בלמידת מכונהתקן למשקלי מודל (Keras .h5)בשימוש נדיר ב-AIללאשימוש גדל והולך במערכי נתונים לאימון AI
אקוסיסטם עיקריNCSA, מחשוב-על, Python h5pyNOAA, מטאורולוגיה, אוקיאנוגרפיהנאס"א, אסטרונומיה, טלסקופיםמדע נתונים מותאם לענן

מצבי שיחשות נפוצים ומדריך שחזור הקסדצימלי (Hex)

שגיאת Python h5py: 'Unable to open file (file signature not found)'.

גורם שורש: סופר-בלוק פגום בן 8 בייט בתחילת הקובץ.

התאוששות: בדוק היסט סופר-בלוק או שחזר מערכי נתונים באמצעות כלי ה-HDF5 של File2File.

ניתוח אבטחה ווקטורי התקפה על מנתחים (Parsers)

ספריית libhdf5 הרשמית מנתחת עצי B מורכבים וטבלאות ערימה (heaps) שבהן היסטים פגומים גרמו לפגיעויות גלישת ערימה (heap overflow).

ווקטורי תקיפה ידועים

  • גלישת חוצץ ערימה במהלך מעבר אינדקס צומת עץ B (למשל CVE-2021-37501).
  • כתיבה מחוץ לגבולות בתוספי צינור סינון פענוח מותאמים אישית.
  • מניעת שירות באמצעות מחזורי קישור קבוצתיים מעגליים.

השיטות המומלצות להגנה:

היסטוריה ואבני דרך

2020HDF5 v1.12 מציג מחברי שכבת אובייקט וירטואלי (VOL) לאחסון אובייקטים בענן (Amazon S3).
2006קבוצת HDF מתפצלת מ-NCSA של אוניברסיטת אילינוי כקרן עצמאית ללא כוונת רווח.
1998NCSA משחררת את HDF5, ומעצבת מחדש לחלוטין את ה-HDF4 המקורי כדי לבטל את מגבלת קבצי ה-2GB.

יתרונות מרכזיים

  • מערכת קבצים מלאה בתוך קובץ: מארגנת מערכי נתונים מורכבים בגודל פטה-בייט לקבוצות ומערכי נתונים בעלי שמות בדומה לספריות.
  • חיתוך תת-מרחבי (hyperslab) בעל ביצועים גבוהים: קרא פרוסה דו-ממדית זעירה ממטריצה חמש-ממדית עצומה בת 100 גיגה-בייט מבלי לקרוא את הקובץ המלא.
  • אינטגרציה עמוקה עם Python מדעי מודרני (h5py), MATLAB, R ומחשבי-על במקביליות MPI בעלי ביצועים גבוהים.

מגבלות טכניות וחסרונות

  • מורכבות מפרט גבוהה מקשה על יישומי מנתח עצמאיים מחוץ לספריית ה-C הרשמית libhdf5.
  • מגבלות נעילה של כותב יחיד ב-HDF5 הקלאסי הסבכו היסטורית זרימות עבודה של כתיבה במקביל.
  • סופר-בלוקים (superblocks) פגומים עלולים להפוך את כל העץ ההיררכי לבלתי נגיש.

עובדות טכניות מעניינות

  • 8 בייטי הקסם הראשונים של קובץ HDF5 (\x89HDF\r\n\x1a\n) משקפים בכוונה את החתימה של PNG כדי לזהות העברות קבצים פגומות.
  • מערכת תצפית כדור הארץ (EOS) של נאס"א מאחסנת פטה-בייטים של נתוני אקלים לווייניים יומיים בפורמט HDF5.
  • מסגרות למידה עמוקה כמו Keras ו-TensorFlow הפכו את HDF5 (.h5) לפופולרי לשמירת משקלי רשת עצבית.

שאלות טכניות נפוצות

מהו קובץ HDF5?

קובץ HDF5 הוא כמו מערכת קבצים שלמה המאוחסנת בתוך קובץ יחיד, המיועד לאחסון יעיל של מערכים מדעיים עצומים, טבלאות ומודלים של למידת מכונה.

מה ההבדל בין .h5 לבין .hdf5?

אין הבדל; .h5 ו-.hdf5 הם שתי סיומות קבצים שונות עבור אותו פורמט נתונים היררכי 5 (Hierarchical Data Format 5).

כיצד אוכל לראות מה יש בתוך קובץ HDF5?

באפשרותך לבדוק את הקבוצות, מערכי הנתונים ומטא-הנתונים בתוך כל קובץ HDF5 באמצעות HDFView, Python h5py, או באופן מקוון עם File2File.app.