תגובות לכתבה: מה זה RAID?

פורום רשתות, IT ומחשוב כללי - רשתות, ראוטרים, מחשבים ניידים, אביזרים וכו'.
byoyo
סמל אישי של משתמש
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 327
הצטרף: אפריל 2005

שליחה

אני אנסה להסביר קצת...
שימו לב להבדל בין ביט (bit) לבין בייט (byte).
בייט אחד=שמונה ביטים (לשם ההבנה אפשר לומר שבייט מייצג תו בודד, למשל a, זה לא 100% נכון - אבל זה מספיק)

Raid5 בגדול עובד עם משהו בסגנון שער XOR.
שער XOR מקבל שני פרמטרים, 0 או 1.
אם הפרמטרים שונים הוא מחזיר 1 אם הם שווים הוא מחזיר 0.

בסופו של יום הכל נכתב על הדיסק בתור או 0 או 1 (ביטים)
על מנת לאפשר שרידות שמאפשרת איבוד דיסק אחד בודד, מה שעושים זה לוקחים את כל הביטים (1 או 0) מאותו מקום בדיוק בכל הדיסקים ומעבירים בשער.
התוצאה המתקבלת היא ה- parity bit.

עכשיו נניח שאבד אחד הביטים של המידע, תמיד ניתן לחשב אותו... עושים XOR להכל ולפי ה- parity bit ניתן לדעת מה הוא היה.

ניתן להבין בקלות למה, כשיוצרים מערך RAID5, "מאבדים" גודל של דיסק אחד (זה המקום שצריך עבור כל ה- parity bits).
ד"א, ה- parity bits לא נכתבים כולם על אותו דיסק, עבור כל בייט, דיסק אחר משמש כ- parity - זה אמור לתת ביצועים טובים יותר.

בנוסף ניתן להבין למה לכתוב לתצורת RAID5 זה "יקר" - עבור כל בייט שנכתב יש חישוב של parity bit... (=בקר טוב יותר כותב יותר מהר.. יש לו מעבד מהיר יותר ו- cache)

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

תומר.

lebovitz
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 393
הצטרף: יולי 2007

שליחה

ובהמשך למה ש-byoyo אמר

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

במערך דיסקים יש חשיבות עליונה ליכולת לשחזר = לתקן את כל הביטים הפגומים, ולכן נדרשים קודים יחסית יקרים מבחינת האורך שלהם --> הרבה דיסקים.
בתקשורת חשובה יותר יכולת זיהוי השגיאה ופחות יכולת התיקון (ניתן לבקש לשדר שוב אם זוהתה טעות). ולכן אורך היתירות שם קטן יותר.

guyezra
חבר במועדון ה-20K
חבר במועדון ה-20K
תגובות: 35112
הצטרף: ינואר 2005

שליחה

תודה רבה!
השכלתי

omri
חבר שרק התחיל
חבר שרק התחיל
תגובות: 44
הצטרף: מאי 2005

מידע משלים

שליחה

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

בנייה
כל דיסק בנוי ממערך של פלטות (plates), כל פלטה מחולקת לtracks (כמו תקליט ווניל) וכל track מחולק ל-sectors
כשמסתכלים על הכל בתלת מימד זה נראה כמו סדרת גלילים (cylinders) הנוצרים מכל הtracks באותו מרחק מהמרכז, כל sector בתלת מימד מקבל כתובת יחודית הנקראת block
התמונה הבאה מנסה להמחיש את זה:
תמונה
מעל ומתחת לכל פלטה יש ראש קורא והראש יכול לזוז רק לשני כיוונים פנימה (לכיוון המרכז) והחוצה

פעולה
הדיסקים כל הזמן מסתובבים וכאשר ניתנת פקודת קריאה כתיבה הראש זז קדימה או החוצה לtrack המבוקש, ואז הוא ממתין לסיבוב של הדיסק כדי שהבלוק הרצוי יתמקם מתחת לראש , בממוצע מדובר על המתנה של חצי סיבוב. סך כל הזמן שעובר ברגע קבלת הפקודה ועד תחילת הקריאה נקרא access time
לדוגמא , נניח שהדיסק מסתובב במהירות של 10000 RPM (10000 סיבובים לדקה) הזמן לעשות חצי סיבוב הוא 3ms, ונניח שהזמן הממוצע של הראש לזוז בין tracks הוא 5ms אז הaccess time הוא 8ms, זה זמן לגישה אקראית לבלוק, אם הגישה היא רציפה (כלומר גישה לבלוקים עוקבים כמובן שהזמן הראה יותר מהיר, לכן חשוב לעשות defrag )
מכיוון שלוקח זמן לדיסק לגשת לקריאה (בדוגמא 8ms) יש מגבלה על הכמות של פקודות אותן הדיסק יכול לקבל בשניה, בדיסק הדוגמא שלנו הכמות היא 1000ms/8ms=125 כלומר 125 פקודות לשניה (IOPS)
אבל מה קורה אם האפליקציה שלנו צריכה 200IOPS לשם כך צריך לחבר שני דיסקים למערך אחד והמערך הזה מסוגל לנפק 250IOPS (ע"פ דיסק הדוגמא)
וכאן למעשה הומצא הRAID הראשון , RAID 0
RAID0
כמו שהסברתי הפתרון הזה נועד להגברת המהירות ע"י חיבור דיסקים במערך אחד, בנוסף הנפח שמתקבל הוא כמספר הדיסקים, אולם כמו שנאמר במאמר , אם דיסק אחד מתקלקל המידע אבוד.
RAID1
בגלל חוסר אמינותם של הדיסקים היה צורך ליצר שרידות מידע במצב של כשל דיסק, לשם כך חיברו שני דיסקים ביחד כשאשר הם העתק מדוייק אחד של השני כך שאם אחד הדיסקים נפגע, הדיסק הנוסף יכיל את כל המידע וכך תושג ההשרדות. מבחינת פעילות כל IO (פקודת דיסק) שמגיע לכתיבה מוכפל ונכתב על שני הדיסקים , אולם כל IO שמגיע לקריאה מנותב רק לאחד הדיסקים , וזה נותן ביצועי קריאה כמו RAID0
זהו הפתרון היקר ביותר אבל גם השריד ביותר ובמינימום פגיעה בביצועים

RAID5
פתרון זה נועד הוריד את עלות פתרון RAID1 כאשר עדין מספקים שרידות גבוהה אולם במחיר כבד של ביצועים
אני אפנה למאמר לתמונה של RAID5 אתם יכולים לראות בתמונה הזאת כי הדיסקים מחולקים לשכבות (בציור יש 4 שכבות A,B,C,D כל שכבה מנוהלת כיחידה אחת ודיסק את נבחר לשמור את מידע השרידות ע"י פעולת XOR המיצרת parity, בציור הparity מצויין כp קטנה ליד כל אחת מהשכבות.
בקריאת מידע הביצועים הם דומים לRAID0 קצת יותר נמוכים (כי דיסק אחד תמיד מכיל את המיגע להשרדות ,parity, ולא יכול לשמש לקריאה
בכתיבת מידע יש פגיעה רצינית בביצועים, קודם צריך לקרוא את המידע הישן , אחר כך צריך לחשב שוב את הparity ע"י XOR , ולבסוף לכתוב אותו שוב, כלומר על כל בקשה של IO לכתיבה צריך לבצע שתי בקשות כתיבה על הדיסקים (פי שתיים יותר איטי) בנוסף בגלל שהRAID צריך לנהל את החלוקה לdata וparity הוא צריך לשמור את המידע בבלוקים קטנים יחסית למשל של 512KB כלומר אם מגיעה בקשה של 1MB היא תפוצל לשתי בקשות אותן יבצעו פעמים (עבור 1MB בקשה, ביצועים איטיים פי 4, עבור בקשה בגודל 2MB ביצועיים איטיים פי 8)

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

rib
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 215
הצטרף: פברואר 2005

שליחה

השרשור כאן רק מחזק את התחושה שלי שהמאמר נגמר מהר מידי.
מצד אחד לא אבן שושן ומצד שני ממש לא אנציקלופדיה.

פספוס משהו...

uriler
סמל אישי של משתמש
חבר במועדון 10K
חבר במועדון 10K
תגובות: 10118
הצטרף: פברואר 2005
שם מלא: אורי לרנר
מיקום: חולון

שליחה

rib,
המאמר נתן "על קצה המזלג" את ההבנה מה זה RAID, מה עושים עם זה, למה, כמה וקצת איך.

לגבי השרשור - אני נהנה לראות שהשרשור הזה לא פחות מקצועי מהמאמר ובהחלט ניתן לראות איך הקהילה הזו מפרה הדדית אחד את השני.
תענוג!

aladin_7
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 106
הצטרף: מאי 2006

שליחה

מאמר מצויין

רק שאלה
נגיד ויש לי מערך בגודל של 3 דיסקים (raid 0/5). האם ניתן להוסיף עוד דיסק למערך מבלי לבנות את הכל מחדש?
השאלה מתייחסת גם לבקר יעודי וגם לאלו שנמצאים על הלוחות אם

תודה

FIRE_WIRE
סמל אישי של משתמש
חבר מביא חבר
חבר מביא חבר
תגובות: 3877
הצטרף: מאי 2005
מיקום: צפון

שליחה

תודה יאן על המאמר הפרקטי (Y)
And the meek shall inherit the earth
...

shlomiassaf
סמל אישי של משתמש
חבר ותיק
חבר ותיק
תגובות: 1444
הצטרף: נובמבר 2005
מיקום: חיפה והקריות

שליחה

למה שללתם באופן מוחלט RAID 5 בתוכנה?

למשל FREENAS?

הרי הפתרון המוצע הוא למשתמש הבייתי...

motico
כתב
כתב
תגובות: 1510
הצטרף: מרץ 2005
מיקום: גבעתיים

שליחה

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

חיים
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
תגובות: 4883
הצטרף: נובמבר 2004
שם מלא: חיים לגו
מיקום: ראשון לציון

שליחה

אחלה מאמר
השכלתי

תודה (Y)
נפט וסולר לחימום ביתי,ולתעשיה.
חיים-0532253784

Gico
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 900
הצטרף: אפריל 2010

שרת unRaid של חברת Lime-Tech

שליחה

סוף סוף נושא שבשבילו שווה להירשם לאתר כדי להגיב :-)
קודם כל אני רוצה לומר שיש לדעתי מחסור בפתרונות מתאימים לשוק הביתי המתוחכם, זה שרוצה וצריך יתירות לנפחים
גבוהים יחסית, אך לא רוצה להשקיע הרבה בפיתרון איכותי שכזה. בין החסרונות לטעמי של הפתרונות שהוצעו כאן:
- יתירות יקרה ברייד 1 - ניצול רק של 50%.
- רייד 5: הצורך בדיסקים זהים בגודלם למערך, דבר שלא מתאים למשתמש ביתי שיש לו דיסקים בנפחים שונים ולא רוצה
3 ומעלה לקנות דיסקים חדשים.
- גם ברייד 5 (שנניח שמורכב מחמישה דיסקים) יש סיכון של איבוד כל (!) המידע אם שני דיסקים נדפקים.
- רייד של לוח האם - מגביל לאורך חיי אותו סוג של לוח האם. מה יקרה כשהוא ישבוק? מאיפה ניתן יהיה להשיג לוח אם
זהה? מה יקרה למידע?

יש לי בבית שלושה דיסקים של טרה, אחד של אחד וחצי ועוד מספר דיסקים קטנים וחיפשתי פיתרון שיענה על
הבעיות הנ"ל. נתקלתי בפיתרון בשם UNRAID של חברת Lime-Tech
http://lime-technology.com/
מדובר בטכנולוגית רייד יעודית הנשענת על מערכת לינוקס מסורסת המפעילה את השרת מתוך DOK.

היתרונות:
- דיסק אחד בלבד מתוך המערך (עד 15-20 דיסקים) משמש ליתירות. המגבלה: הדיסק צריך להיות הגדול ביותר
מכל הדיסקים (או שווה בגודלו לדיסק הכי גדול).
- אין חובה בדיסקים בגודל שווה.
- אין תלות בחומרה ספציפית.

חסרונות:
- מעל שלושה דיסקים התוכנה עולה כסף, כמה עשרות דולרים.
- כדי לגבות את ה-DOK רצוי לקנות רשיון נוסף ב-30$.

למען הגילוי הנאות: אין לי קשר כלשהו לחברת Lime-Tech. נתקלתי בפיתרון שלהם ברשת ואני מתכוון להרכיב שרת
כזה בחודשים הקרובים.

אשמח לשמוע חוות דעת, הערות והארות.

omri
חבר שרק התחיל
חבר שרק התחיל
תגובות: 44
הצטרף: מאי 2005

שליחה

אחרי קריאה של הפתרון צריך להבין את מגרעות הביצועים שלו .
לקריאה הוא נותן את ביצועים הגרועים מכל הRAID מכיוון שהפתרון אינו משתמש במספר דיסקים על מנת לקרוא את הDATA אלא בדיסק אחד.
בכתיבה הוא נותן ביצועים גרועים לפחות RAID5 אם הפתרון נעשה בחומרה, אם הפתרון נעשה בתוכנה הרבה יותר גרועים (קודם צריך לקרוא, להעלות את הDATA והPARITY לרמת תוכנה, לחשב את הPARITY מחדש ולכתוב שוב) כמו כן הביצועיים יהיה כמו של הדיסק האיטי ביותר בין זוג הדיסקים שמשמשים לכתיבה
גם ברייד רגיל יש אפשרות לערבב מספר דיסקים לא מאותו הסוג אולם הדיסק הקטן והאיטי ביותר הוא זה שיקבע את המהירות והקיבולת.
לגבי מחיר כש-1TB עולה 70$ אני לא חושב ש280$ משחקים תפקיד רציני יחסית לפתרון.

Adix
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 744
הצטרף: נובמבר 2004

שחזור מידע בריד 5

שליחה

במידה והתקלקל לי דיסק, אני ממשיך לעבוד כרגיל?
איך אני יכול לשים במקומו דיסק נוסף שישמש ל Parity?
האם ניתן על לום אם בין ימנו (P48 במקרה שלי), להתקין דיסק מערכת עצמאי + 4 דיסקים ב RAID 5?
האם כדאי או שלא כדאי שדיסק המערכת יהיה עצמאי (לא חלק מה RAID?).

ושאלה אחרונה, האם אין שום דרך כלשהיא להפוך מספר כוננים ל RAID בלי למחוק את המידע?

תודה.

עדי

DanyL
חבר שרק התחיל
חבר שרק התחיל
תגובות: 2
הצטרף: אפריל 2010

שליחה

מאמר מעניין יעקוב,
אבל חבל לי שלא התיחסת לרמות RAID 10 ו-01, מה שמאפשר לך גם מהירות גבוהה וגם אמינות גבוהה.

בנוסף לזה, צריך לציין שהתמיכה ב-FAKE RAID בלינוקס (ע"י שימוש בכלי DMRAID) לא כל כך טובה.
מה גם שלרוב בקרי ה-FAKE RAID יש ביוס משלהם - מה שמאפשר לך להגדיר את כל המערך עוד לפני עליית מערכת ההפעלה (אם כי עדיין אין לזה תמיכה כל כך טובה בלינוקס).

oferlaor
סמל אישי של משתמש
מנהל
מנהל
תגובות: 79069
הצטרף: נובמבר 2004
שם מלא: עפר לאור
מיקום: מודיעין, ישראל

שליחה

Gico,

אנחנו מכירים את LIME ויש להם לא מעט לקוחות כאן באתר ל-UNRAID. אני חושב ש-JPOST כתב עליהם לא מעט והרעיון מאחורי הציוד שלהם הוא לא פחות ממדהים.

ashk
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 942
הצטרף: מאי 2009

שליחה

omri כתב:אחרי קריאה של הפתרון צריך להבין את מגרעות הביצועים שלו .
לקריאה הוא נותן את ביצועים הגרועים מכל הRAID מכיוון שהפתרון אינו משתמש במספר דיסקים על מנת לקרוא את הDATA אלא בדיסק אחד.
בכתיבה הוא נותן ביצועים גרועים לפחות RAID5 אם הפתרון נעשה בחומרה, אם הפתרון נעשה בתוכנה הרבה יותר גרועים (קודם צריך לקרוא, להעלות את הDATA והPARITY לרמת תוכנה, לחשב את הPARITY מחדש ולכתוב שוב) כמו כן הביצועיים יהיה כמו של הדיסק האיטי ביותר בין זוג הדיסקים שמשמשים לכתיבה
גם ברייד רגיל יש אפשרות לערבב מספר דיסקים לא מאותו הסוג אולם הדיסק הקטן והאיטי ביותר הוא זה שיקבע את המהירות והקיבולת.
לגבי מחיר כש-1TB עולה 70$ אני לא חושב ש280$ משחקים תפקיד רציני יחסית לפתרון.
...
אין לדבר על "פתרון" לפני שמגדרים מהי הבעיה שמנסים לפתור. אני לא מבין מה הטעם בהשוואת ביצועים בלי קשר לייעוד של הפתרון.
לדעתי, UNRAID לא מתיימר להתחרות בכל RAID, אלא להיות NAS ש"specifically designed for digital media storage".
בינתיים, אף אחד נימק למה UNRAID לא טוב (ברמת פונקציונליות, לא בגלל ש"זה עולה כסף") כפתרון שכזה. ואם אין חסרונות שעלולים למנוע שימוש בUNRAID למתרות NAS למדיה דיגיטלית , אז יש, בעיניי, יתרון עצום - שרידות של נתונים במקרה ש2 דיסקים הלכו.

omri
חבר שרק התחיל
חבר שרק התחיל
תגובות: 44
הצטרף: מאי 2005

שליחה

אני לא משווה ביצועים אלא מדווח לכם על פוטנציאל הביצועים כדי שתוכלו לבצע החלטות (ד"א איך הגעת לשרידות של שני דיסקים
(מה קורה אם הparity disk+data disk נופלים?)

חסרונות פוטנציאלים (אני באמת לא נכנס כאן לכל הדקויות של הטכנולוגיה, זה יהיה עליכם לעשות)
עריכת סרטי וידאו הunraid לא יתפקד בצורה טובה
capture של HD ממספר מקורות באותו הזמן הוא לא יתפקד טוב
הורדות באותו הזמן שמבצעים capturing של HD הוא לא יתפקד טוב
הסיבות לכל החסרונות הם דיסק הparity שעוצר את כל העסק, כמו כן המהירות היא תמיד תחומה במהירותו של דיסק אחד ולא יכולה לגדול ע"י שימוש במספר דיסקים

יכול להתאים
אם רק מאחסנים סרטים וצופים
אם מאכסונים קבצים רבים, יחסית קטנים ורוצים לשמור על שרידותם

רק שיהיה ברור שאין לי ניסון אם הפתרון הזה (וזה פתרון טכנולוגי לבעיית שרידות לכן אני משתמש במילה פתרון) והזמן שאני מקדיש כדי להיכנס לעומקו הוא מינימלי

ashk
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 942
הצטרף: מאי 2009

שליחה

omri כתב: ד"א איך הגעת לשרידות של שני דיסקים
(מה קורה אם הparity disk+data disk נופלים?)
...
מה שקורה זה ש"הparity disk+data disk נופלים", לא פחות ולא יותר. שאר הדיסקים קריאים לחלוטין (בUNRAID אין strip).

לגבי כל השאר, אנחנו בפורום HTPC, אז סביר להניח ששימוש המיועד הוא בהתאם - לרוב "מאחסנים סרטים וצופים" (אגב, למה קבצים חייבים להיות "יחסית קטנים"?).

orir
סמל אישי של משתמש
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 497
הצטרף: מאי 2008

שליחה

מאמר מצוין.
תודה.

חזור אל “רשתות, אינטרנט ו- Fiber”