1. Огляд RAID
У 1988 році Каліфорнійський університет у Берклі запропонував концепцію RAID (RedundantArrayofInexpensiveDisks), і оскільки вартість дисків продовжувала знижуватися, RAID став (RedundantArrayofIndependentDisks), але суть не змінилася. SNIA, Berkeley та інші організації встановили сім рівнів RAID0~RAID6 як стандартні рівні RAID, і стандартний RAID можна поєднувати з іншими рівнями RAID, а найчастіше використовуваними є RAID0, RAID1, RAID3, RAID5, RAID6 та RAID10. Кожен рівень RAID представляє метод і технологію впровадження, і між рівнями немає різниці. У практичних застосуваннях слід обирати відповідний рівень RAID та конкретні методи реалізації залежно від характеристик додатку користувача, враховуючи доступність, продуктивність і вартість.
З точки зору реалізації, RAID поділяється переважно на три типи: м'який RAID, жорсткий RAID і гібридний RAID. Усі функції soft RAID виконуються операційною системою та процесором, що, природно, є найменш ефективним. Жорсткий RAID оснащений спеціалізованими RAID-чипами керування/обробки, а також чипами вводу/виводу та буферами масивів, які не споживають ресурси процесора, але є дорогими. Гібридний RAID має RAID-чіпи для керування/обробки, але не має чипів для обробки вводу/виводу, які потребують процесора та драйверів для завершення, а продуктивність і вартість когуються між софт-і та жорстким RAID.
2. Основні принципи
RAID — це підсистема диска, що складається з кількох незалежних, високопродуктивних дисководів, що забезпечує вищу продуктивність зберігання та технологію резервування даних, ніж один диск. RAID — це клас технологій багатодискового управління, який забезпечує високопродуктивне зберігання з високою надійністю даних за доступною ціною для хост-середовища. Дві ключові цілі RAID — підвищення надійності даних та продуктивності введення/виведення. У масиві дисків дані розподіляються між кількома дисками, але для комп'ютерної системи це схоже на один диск. Надлишковість досягається шляхом запису одних і тих самих даних на кілька дисків одночасно (зазвичай дзеркалювання) або запису обчислюваних контрольних даних у масив, що гарантує, що втрата даних не виникає при виході з ладу одного диска.
У RAID є три основні концепції та техніки: дзеркалювання (Mirroring), Stripping (Видалення даних) та Dataparity:
Дзеркалювання, яке реплікує дані на кілька дисків, підвищує надійність з одного боку і покращує продуктивність читання, зчитуючи дані з двох або більше реплік одночасно. Очевидно, що продуктивність запису образу трохи нижча, і потрібно більше часу, щоб переконатися, що дані правильно записані на кілька дисків. Data striping, який зберігає фрагменти даних на кількох різних дисках, а кілька шардів разом утворюють повну копію даних, що відрізняється від кількох копій дзеркалювання і часто використовується для підвищення продуктивності. Смужки даних мають вищу гранулярність паралелізму, і при доступі до даних вони можуть одночасно читати та записувати дані на різних дисках, що призводить до значного покращення продуктивності введення/виведення. Верифікація даних, із використанням резервних даних для виявлення та виправлення помилок даних, резервні дані зазвичай обчислюються за допомогою коду Хемінгуея, операції XOR та інших алгоритмів. Функція верифікації може значно підвищити надійність, крадіжку та відмовостійкість масивів дисків. Однак валідація даних вимагає, щоб дані читалися з кількох джерел, обчислювалися та порівнювалися, що може впливати на продуктивність системи. Різні рівні RAID використовують одну або кілька з трьох технологій для досягнення різної надійності, доступності та продуктивності введення/виведення даних. Щодо того, який RAID спроєктувати (або навіть новий клас чи тип), чи який режим RAID використовувати, необхідно зробити розумний вибір, базуючись на глибокому розумінні потреб системи, а також комплексно оцінити надійність, продуктивність і вартість для компромісу.
Загалом, основні переваги RAID — це велика ємність, висока продуктивність, надійність і керованість.
3. Рейтинг RAID
JBOD (JustaBunchOfDisks) не є стандартним RAID-рівнем, він часто використовується для представлення колекції дисків, які не мають програмного забезпечення керування для забезпечення координованого керування. JBOD з'єднує кілька фізичних дисків послідовно, забезпечуючи величезний логічний диск. Продуктивність сховища така ж, як і на одному диску, і це не забезпечує захист даних. Доступна ємність зберігача дорівнює сумі об'єму всіх дисків-учасників.
RAID0, який називається striping, — це проста, неконтрольована технологія стріпінгу даних. Продуктивність — найвищий серед усіх рівнів RAID. Жодних полісів щодо скорочення не передбачено. 100% використання простору для зберігання.
RAID1 називається дзеркалюванням, і він записує дані на робочий диск і дзеркальний диск абсолютно послідовно, а використання простору на диску становить 50%. Продуктивність змінюється, коли дані записуються, але дані не зчитуються. Він забезпечує найкращий захист даних: після виходу з ладу робочий диск система автоматично зчитує дані з дзеркального диска, що не впливає на роботу користувача.
RAID2 називається Heming Code Disk Array, і його конструкція полягає у використанні коду Гемінга для забезпечення надлишковості перевірки даних. Чим більша ширина даних, тим вищий обсяг зберігання, але тим більше дисків потрібно. Він має здатність виправляти помилки, але накладні витрати на надлишковість даних у Hemingcode надто великі, а реконструкція даних дуже трудомістка, тому RAID2 рідко використовується на практиці.
RAID3 називається спеціалізованою смужкою парності, яка використовує окремий диск як контрольний диск, а решту дисків — як диск даних, і дані зберігаються крос-перехресно на кожному диску даних у бітах і байтах. RAID3 вимагає щонайменше трьох дисків.
RAID4 і RAID3 працюють приблизно за тим самим принципом. Забезпечує дуже хорошу якість читання, але погану якість запису. І зі збільшенням кількості дисків-членів системне вузьке місце диска контрольної суми стає більш помітним. Це рідкість у реальних застосуваннях, а масові продукти зберігання даних рідко використовують захист RAID4.
RAID5 називається розподіленою контрольною сумою парності, яка має бути найпоширенішим рівнем RAID на даний момент, і цей принцип схожий на RAID4, але немає вузьких перешкод у продуктивності перевірочного диска під час одночасних операцій запису в RAID4.
RAID6, який називається смужкою подвійної парності, вводить концепцію подвійних перевірок для вирішення проблеми цілісності даних, коли два диски одночасно виходять з ладу, що інші класи RAID не можуть вирішити. Однак він коштує значно дорожче за RAID5, має низьку продуктивність запису і дуже складний у проєктуванні та реалізації. Тому RAID6 рідко використовується на практиці і загалом є економічною альтернативою рішенням RAID10.
Стандартні RAID-рівні мають свої сильні та слабкі сторони. Комбінуйте кілька рівнів RAID для досягнення взаємодоповнюючих переваг і компенсації недоліків один одного, щоб створити систему RAID з вищою продуктивністю, захистом даних та іншими показниками. Звісно, вартість реалізації комбінації зазвичай дуже висока і використовується лише в кількох конкретних випадках. Насправді широко використовуються лише RAID01 і RAID10.
RAID01 спочатку проходить смугою, а потім дзеркальна, що фактично означає зображення фізичного диска; RAID10 спочатку створює образ, а потім stripe, тобто образ віртуального диска. За тією ж конфігурацією RAID01 зазвичай має кращу стійкість до відмов, ніж RAID10. RAID01 поєднує переваги RAID0 і RAID1, із загальним використанням диска лише 50%.
4. Порівняння основних рівнів RAID
Конфігурація RAID
Рівень/Опис: | Відмовостійкість | Заслуга | Недолік | RAID 0
Відображуйте дані між дисками для створення великих віртуальних дисків. Оскільки кожен фізичний диск обробляє лише частину запиту, він може забезпечити вищу продуктивність. Однак, якщо один диск вийде з ладу, віртуальний диск (VD) стане недоступним, і дані будуть втрачені назавжди. | не | Краща продуктивність Додаткове сховище | Його не можна використовувати для критично важливих даних | РЕЙД 1
Віддзеркалюйте дані, зберігайте надлишковість даних на двох дисках. Якщо один диск виходить з ладу, інший диск стає основним приводом. | Помилка диска Відмова одного диска | Висока продуктивність читання Швидке відновлення після поломки диска Надлишковість даних | Накладні витрати на диск великі Обмежена місткість | RAID 5
Відтворюйте дані між дисками та зберігайте біти парності кожної смужки даних на різних дисках у VD. Біт парності містить інформацію, яку можна використати для відновлення даних з несправного диска з іншого диска у разі відмови одного диска. | Помилка диска Відмова одного диска | Ефективне використання потужності приводу Висока продуктивність читання Середня та висока продуктивність запису | Помірний вплив на відмову диска Через перерахунок парності час реконструкції довший | РЕЙД 6
Відтворюйте дані між дисками та зберігайте біти парності кожної смужки даних на різних дисках у VD. На відміну від RAID 5, RAID 6 виконує два розрахунки парності (P і Q), що дозволяє йому витримувати відмови двох дисків. | Надлишковість даних Висока продуктивність читання | Помилка диска Відмова подвійного диска | Продуктивність запису знижується через два розрахунки парності Оскільки це еквівалентно використанню двох дисків для паритету, це додаткова вартість | РЕЙД 10
Смужки на наборі дзеркал. Накладні витрати на диск великі, але це чудове рішення для високої продуктивності, резервування та швидкого відновлення у разі відмови диска. | Помилка диска Одна несправність диска на кожен набір образів | Висока продуктивність читання Підтримуються RAID-групи з до 192 дисками | Найвища вартість | RAID 50
Стрічка RAID 5 на знімальному майданчику. Зменшуючи кількість читань на диск за розрахунком паритету, продуктивність можна покращити з RAID 5, залежно від конфігурації. | Помилка диска Одна несправність диска на кожен проміжок | Висока продуктивність читання Середня та висока продуктивність запису Підтримуються RAID-групи з до 192 дисками | Помірний вплив на відмову диска Через перерахунок парності час реконструкції довший | RAID 60
Стрічка RAID 6 на знімальному майданчику. При меншій кількості читання дисків на обчислення парності продуктивність можна покращити за допомогою RAID 6, залежно від конфігурації. | Помилка диска Два диски виходять з ладу на кожен проміжок | Висока продуктивність читання Підтримуються RAID-групи з до 192 дисками | Продуктивність запису знижується через два розрахунки парності Оскільки це еквівалентно використанню двох дисків для паритету, це додаткова вартість |
5. Різниця між програмним і апаратним забезпеченням RAID
М'який RAID
Soft RAID не має окремого керуючого чипа та чипа введення/виведення, а операційна система та процесор реалізують усі RAID-функції. Сучасні операційні системи фактично пропонують підтримку soft RAID, забезпечуючи абстракцію між фізичними та логічними дисками шляхом додавання програмного шару поверх драйверів дискових пристроїв. Наразі найпоширенішими рейтингами RAID, які підтримує операційна система, є RAID0, RAID1, RAID10, RAID01 та RAID5. Наприклад, Windows Server підтримує RAID0, RAID1 та RAID5, Linux — RAID0, RAID1, RAID4, RAID5, RAID6 тощо, а Mac OS X Server, FreeBSD, NetBSD, OpenBSD, Solaris та інші операційні системи також підтримують відповідні рівні RAID.
Управління конфігурацією та відновлення даних soft RAID відносно прости, але всі RAID-завдання повністю виконуються процесором, наприклад, обчислення контрольних значень, тому ефективність виконання відносно низька.
Soft RAID реалізується операційною системою, тому розділ, на якому розташована система, не може бути використаний як логічний член-диск RAID, а soft RAID не може захистити системний диск D. Для деяких операційних систем інформація конфігурації RAID зберігається у системній інформації, а не як окремий файл на диску. Таким чином, коли система раптово зависає і потребує перевстановлення, RAID-інформація втрачається. Крім того, технологія відмовостійкості диска не повністю підтримує онлайн-заміну, гарячу заміну або гарячу заміну, і чи може вона підтримувати гарячу заміну неправильного диска, залежить від реалізації операційної системи.
Жорсткий RAID
Жорсткий RAID має власні чипи керування RAID та обробки вводу/виводу, а також буферизацію масивів, що є найкращим із трьох типів реалізацій за використанням процесора та загальною продуктивністю, але також має найвищу вартість реалізації. Жорсткий RAID зазвичай підтримує технологію гарячої заміни, яка замінює несправні диски під час роботи системи.
Жорсткий RAID складається з RAID-карти та RAID-чіпа, інтегрованих на материнській платі, а серверні платформи часто використовують RAID-карти. RAID-карта складається з 4 частин: процесора ядра RAID (процесора на RAID-карті), порту, кешу та батареї. Серед них порти означають типи дискових інтерфейсів, які підтримуються RAID-картами, такі як IDE/ATA, SCSI, SATA, SAS, FC та інші інтерфейси.
Змішаний жорсткий і м'який RAID
Soft RAID не дуже ефективний і не захищає системні розділи, що ускладнює його застосування на настільних системах. Жорсткий RAID дуже дорогий, а різні RAD незалежні один від одного і не сумісні. Тому люди використовують комбінацію програмного та апаратного забезпечення для реалізації RAID, щоб досягти компромісу між продуктивністю та вартістю, тобто високої вартості.
Хоча цей RAID використовує чип керування обробкою, щоб зекономити витрати, він часто дешевший і має слабшу обчислювальну потужність, а більшість завдань RAID все одно виконується процесором через драйвери прошивки.
6. Вибір застосування RAID
Існує три основні фактори при виборі рівня RAID: доступність даних, продуктивність введення/виведення та вартість. Якщо доступність не потрібна, обирайте RAID0 для високої продуктивності. Якщо важливі доступність і продуктивність, а вартість не є основним фактором, обирайте RAID1 залежно від кількості дисків. Якщо доступність, вартість і продуктивність однаково важливі, обирайте RAID3 або RAID5 залежно від загальної передачі даних і кількості дисків. У практичних застосуваннях відповідний рівень RAID слід обирати відповідно до характеристик і специфічних умов додатку даних користувача, враховуючи доступність, продуктивність і вартість.
|