מה זה RAID?

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

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

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

זה נעשה על ידי שימוש בחלק מהחלל על הכוננים כדי לשכפל את הנתונים שנכתב לשני הכוננים. שוב, עם שני כוננים אנחנו יכולים לעשות את זה כך הנתונים נכתב על שני כוננים. לכן, אם כונן אחד נכשל, השני עדיין יש את הנתונים.

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

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

RAID 0

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

כונן 1 כונן 2 כונן 3
חסום 1 1 2 3
בלוק 2 4 5 6
בלוק 3 7 8 9


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

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

JBOD מייצג רק חבורה של כוננים וביעילות הוא רק אוסף של כוננים שניתן לגשת אליהם באופן עצמאי אחד מהשני אבל מופיעים ככונן אחסון יחיד למערכת ההפעלה. זה מושגת בדרך כלל על ידי בעל טווח הנתונים בין הכוננים. לעתים קרובות זה נקרא SPAN או BIG.

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

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

RAID 1

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

כונן 1 כונן 2
חסום 1 1 1
בלוק 2 2 2
בלוק 3 3 3


כדי לקבל את השימוש היעיל ביותר מהגדרת RAID 1, המערכת תשתמש שוב בכוננים תואמים אשר חולקים את אותה קיבולת ודירוג ביצועים.

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

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

RAID 1 + 0 או 10

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

כונן 1 כונן 2 כונן 3 כונן 4
חסום 1 1 1 2 2
בלוק 2 3 3 4 4
בלוק 3 5 5 6 6


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

RAID 5

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

כונן 1 כונן 2 כונן 3
חסום 1 1 2 עמ '
בלוק 2 3 עמ ' 4
בלוק 3 עמ ' 5 6


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

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

עכשיו את היכולת של מערך RAID 5 תלויה במספר הכוננים במערך ואת הקיבולת שלהם. שוב, המערך מוגבל על ידי כונן הקיבולת הקטן ביותר במערך ולכן עדיף להשתמש בכוננים תואמים. שטח האחסון האפקטיבי שווה למספר הכוננים בניכוי הקיבולת הנמוכה ביותר. אז במונחים מתמטיים, זה (n-1) * קיבולת . אז, אם יש לך שלושה כוננים 2GB במערך RAID 5, הקיבולת הכוללת יהיה 4GB. עוד RAID 5 מערך ששימש ארבעה כוננים 2GB היה 6GB של קיבולת.

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

הנושא הגדול עם כל RAID setups

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

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