Linux 6.2 יכלול שיפורים ל-RAID5 ו-RAID6 ב-Btrfs

הקרנל של לינוקס

הקרנל של לינוקס

לאחרונה נחשף כי שיפורים ל-Btrfs הוצעו להכללה בליבת Linux 6.2 כדי לתקן את בעיית חור הכתיבה ביישום RAID 5/6.

מהות הבעיה מסתכמת בעובדה שאם מתרחשת קריסה במהלך ההקלטה, לא ניתן בשלב ראשון להבין איזה בלוק על איזה מהתקני ה-RAID נכתב נכון, ועל איזה הקלטה לא הושלמה.

אם תנסה לבנות מחדש RAID במצב זה, החסימות התואמות לבלוקים הרשומים עלולים להיפגם מכיוון שמצב בלוקי ה-RAID אינו מסונכרן. בעיה זו מתרחשת בכל מערך RAID1/5/6 שבו לא ננקטים אמצעים מיוחדים כדי להילחם בהשפעה זו.

ביישום RAID כמו RAID1 ב-btrfs, הבעיה הזו נפתרת על ידי שימוש בסכומי ביקורת בשני העותקים, אם יש אי התאמה, הנתונים פשוט משוחזרים מהעותק השני. גישה זו פועלת גם אם מכשיר כלשהו מתחיל לספק נתונים גרועים במקום להיכשל לחלוטין.

עם זאת, במקרה של RAID5/6, מערכת הקבצים אינה מאחסנת סכומי ביקורת עבור בלוקים זוגיות - במצב רגיל נבדקת נכונות הבלוקים על ידי העובדה שכולם מצוידים ב-checksum, וניתן ליצור מחדש את בלוק הזוגיות מהנתונים. עם זאת, במקרה של הקלטה חלקית, ייתכן שגישה זו לא תעבוד במצבים מסוימים. במקרה הזה, כאשר משחזרים את המערך, ייתכן ש הבלוקים שנותרו ברשומה הלא מלאה משוחזרים בצורה שגויה.

במקרה של btrfs, בעיה זו רלוונטית יותר אם הכתיבה שמתרחשת קטנה מהפס. במקרה זה, מערכת הקבצים חייבת לבצע פעולת קריאה-שינוי-כתיבה (RMW).

אם הוא נתקל בחסימות כתיבה בתהליך, פעולת RMW עלולה לגרום לשחיתות שלא תזוהה, ללא קשר לסכומי בדיקה. המפתחים ביצעו שינויים בהם פעולת RMW מאמתת את ה-checksum של הבלוקים לפני ביצוע פעולה זו, ובמידת הצורך, שחזור הנתונים מבצע גם אימות checksum לאחר הכתיבה.

למרבה הצער, במצב בו נכתב שוליים לא שלם (RMW), הדבר יוצר תקורה נוספת לחישוב סכומי הבדיקה, אך מגדיל משמעותית את האמינות. עבור RAID6, היגיון כזה עדיין לא מוכן,

בנוסף, אנו יכולים לציין את ההמלצות על השימוש ב-RAID5/6 מהמפתחים, שמהותן היא שב-Btrfs הפרופיל לאחסון מטא נתונים ונתונים עשוי להיות שונה. במקרה זה, אתה יכול להשתמש בפרופיל RAID1 (מראה) או אפילו RAID1C3 (3 עותקים) עבור מטא נתונים, ו-RAID5 או RAID6 עבור נתונים.

זה מבטיח הגנת מטא נתונים אמינה והיעדר "חור כתיבה" מחד, וניצול יעיל יותר של שטח, אופייני ל-RAID5/6, מאידך. זה מונע השחתת מטא נתונים וניתן לתקן שחיתות נתונים.

גם ניתן לציין כי עבור SSDs על Btrfs בקרנל 6.2, la ביצוע אסינכרוני של פעולת "השליך". (סמן בלוקים משוחררים שלא ניתן עוד לאחסן פיזית) יהיה מופעל כברירת מחדל.

היתרון בכך מצב הוא ביצועים גבוהים עקב קיבוץ יעיל של פעולות השלכה בתור ועיבוד לאחר עיבוד של התור על ידי מטפל ברקע, כך שפעולות FS רגילות אינן מואטות כפי שקורה ב"מחיקה" סינכרונית כאשר בלוקים משתחררים, וה-SSD יכול להשתפר החלטות. מצד שני, לא תצטרכו יותר להשתמש בכלי עזר כמו fstrim, מכיוון שכל הבלוקים הזמינים יימחקו ב-FS ללא צורך בסריקה נוספת וללא האטת פעולות.

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


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי על הנתונים: AB Internet Networks 2008 SL
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.