Що таке raid 1 0. RAID масив: види та процес створення

1+0 (називається також RAID 10)- схожий з RAID 01 масив незалежних дисків, з тією лише різницею, що рівні, що використовуються в цій системі, реверсивні і є смужкою дзеркал. Диски вкладеного масиву об'єднані парами в "дзеркала" RAID 1. Потім ці дзеркальні пари трансформуються на загальний масив, використовуючи чергування RAID 0.

Відновлення даних

Кожен диск із масивом RAID 1 може бути пошкоджений без втрати даних. Однак, мінус системи в тому, що пошкоджені дискинезамінні, і у разі виникнення помилки в роботі системи, користувач буде змушений використовувати ресурси системи, що залишилися. Деякі системи RAID 10 мають так званий спеціальний диск "hot spare", який автоматично замінює диск, що вийшов з ладу в масиві.

Продуктивність та швидкість

Згідно з відгуками виробників і специфікаціям пристроїв, в більшості випадків RAID 10 пропонує кращу пропускну здатність і менший час очікування, ніж решта RAID рівні, за винятком RAID 0 (найкраща пропускна здатність). Це один із найкращих рівнів для роботи "важких" додатків, що вимагають високу працездатність системи.

RAID 10 дає можливість поєднати лише парну кількість дисків.

  • Мінімальна кількість дисків – 4,
  • Максимальна кількість дисків – 16.

У чому різниця між RAIN 1+0 та RAID 0+1?

Ключова різниця між гібридами RAID 0+1 і RAID 1+0 полягає в локації кожної RAID-системи: RAID 0+1 - це дзеркальна система смуг, де два RAID 0 об'єднуються в RAID 1, тоді як RAID 1+0 є поєднанням двох RAID 1, об'єднаних в RAID 0. "Зовні", візуально, RAID 0+1 є той же RAID 10.

Деякі виробники використовують RAID 1+0, змінивши їм RAID 0+1, оскільки він забезпечує більш коректну та безпечну роботусистеми.

Теоретично, RAID 0+1 та RAID 1+0 мають рівну стійкість до помилок та збоїв. Більшість контролерів немає таких значних показників надійності.

Переваги системи

"Дзеркало" RAID 1 забезпечує системі надійність, масив RAID 0 збільшує продуктивність.

Недоліки системи

Мінуси у рівня RAID 10 такі ж, як і у рівня RAID 0. Користувачеві рекомендується включати до масиву диски гарячого резерву з розрахунку 1 резервний на 5 робочих.

Приклад роботи RAID 1+0:

  • Диски 1+2 = RAID 1 (Дзеркальний сет A)

  • Диски 3+4 = RAID 1 (Дзеркальний сет B)
  • 
 Диски 5+6 = RAID 1 (Дзеркальний сет C)

  • Диски 7+8 = RAID 1 (Дзеркальний сет D)

  • Диски 9+10 = RAID 1 (Дзеркальний сет E)

  • Диски 11+12 = RAID 1 (Дзеркальний сет F)
  • 
 Диски 13+14 = RAID 1 (Дзеркальний сет G)

  • Диски 15+16 = RAID 1 (Дзеркальний сет H)

  • Диски 17+18 = RAID 1 (Дзеркальний сет I)
  • 
 Диски 19+20 = RAID 1 (Дзеркальний сет J)

В даному випадку, ми зможемо впровадити смугу RAID 0 поперек усіх сетів: з A по J. Припустимо, якщо в 5 диску виявлена ​​помилка, єдиним дзеркальним сетом буде сет C. Він також має диск 6 у зв'язці, але цей диск не припинить своє функціонування і працюватиме далі.

Проблема підвищення надійності зберігання інформації та одночасного збільшення продуктивності системи зберігання даних займає уми розробників комп'ютерної периферії вже давно. Щодо підвищення надійності зберігання, все зрозуміло: інформація - це товар, і нерідко дуже цінний. Для захисту від втрати даних придумано чимало способів, найбільш відомий та надійний з яких – це резервне копіюванняінформації.

Питання підвищення продуктивності дискової підсистеми дуже складне. Зростання обчислювальних потужностей сучасних процесорів призвело до того, що спостерігається явний дисбаланс між можливостями жорстких дисків та потребами процесорів. При цьому не рятують ні дорогі SCSI-диски, ні тим більше IDE-диски. Однак якщо не вистачає можливостей одного диска, то, можливо, почасти вирішити цю проблемудозволить наявність кількох дисків? Звичайно, сама по собі наявність двох або більше жорстких дисків на комп'ютері або на сервері справи не змінює - потрібно змусити ці диски працювати спільно (паралельно) так, щоб це дозволило підвищити продуктивність дискової підсистеми на операціях запису/читання. Крім того, чи не можна, використовуючи кілька жорстких дисків, домогтися підвищення не тільки продуктивності, а й надійності зберігання даних, щоб вихід з ладу одного з дисків не призводив до втрати інформації? Саме такий підхід був запропонований ще 1987 року американськими дослідниками Паттерсоном, Гібсоном та Катцом з Каліфорнійського університету Берклі. У своїй статті "A Case for Redundant Arrays of Inexpensive Discs, RAID" ("надлишковий масив недорогих дисків") вони описали, яким чином можна об'єднати кілька дешевих жорстких дисків в один логічний пристрій так, щоб у результаті підвищувалися ємність та швидкодія системи, а відмова окремих дисків не призводила до відмови всієї системи.

З моменту виходу статті минуло вже 15 років, але технологія побудови RAID-масивів не втратила актуальності і сьогодні. Єдине, що змінилося з того часу - це розшифровка абревіатури RAID. Справа в тому, що спочатку RAID-масиви будувалися зовсім не на дешевих дисках, тому слово Inexpensive (недорогі) поміняли на Independent (незалежні), що більше відповідало дійсності.

Більше того, саме зараз технологія RAID набула широкого поширення. Так, якщо ще кілька років тому RAID-масиви використовувалися в дорогих серверах масштабу підприємства із застосуванням SCSI-дисків, то сьогодні вони стали своєрідним стандартом де-факто навіть для серверівпочаткового рівня . Крім того, поступово розширюється і ринок IDE RAID-контролерів, тобто актуальність набуває завдання побудови RAID-масивів на робочих станціях із використанням дешевих IDE-дисків. Так, деякі виробникиматеринських плат

(Abit, Gigabyte) вже почали інтегрувати RAID-контролери IDE на самі плати.

Підвищення продуктивності дискової підсистеми забезпечується одночасною роботою кількох дисків, й у сенсі що більше дисків у масиві (до певної межі), краще.

Спільну роботудисків у масиві можна організувати з допомогою або паралельного, або незалежного доступу.

При паралельному доступі дискове місце розбивається на блоки (смужки) для запису даних. Аналогічно інформація, що підлягає запису на диск, розбивається такі самі блоки. При записі окремі блоки записуються на різні диски(рис. 1), причому запис кількох блоків на різні диски відбувається одночасно, що призводить до збільшення продуктивності в операціях запису. Потрібна інформаціятакож зчитується окремими блоками одночасно з кількох дисків (рис. 2), що сприяє зростанню продуктивності пропорційно кількості дисків в масиві.

Слід зазначити, що модель з паралельним доступом реалізується лише за умови, що розмір запиту на запис даних більший за розмір самого блоку. В іншому випадку реалізувати паралельний запис кількох блоків просто неможливо.

Уявимо ситуацію, коли розмір окремого блоку становить 8 Кбайт, а розмір запиту запис даних - 64 Кбайт. І тут вихідна інформація нарізається на вісім блоків по 8 Кбайт кожен. Якщо є масив із чотирьох дисків, то одночасно можна записати чотири блоки, або 32 Кбайт, за один раз. Очевидно, що в розглянутому прикладі швидкість запису та швидкість зчитування виявиться вчетверо вищою, ніж при використанні одного диска. Однак така ситуація є ідеальною, оскільки далеко не завжди розмір запиту кратний розміру блоку та кількості дисків у масиві. Якщо розмір записуваних даних менше розміру блоку, то реалізується принципово інша модель доступу - незалежний доступ. Більш того, ця модель може бути реалізована і в тому випадку, коли розмір даних, що записуються більше розміру одного блоку. При незалежному доступі всі даніокремого запиту

записуються на окремий диск, тобто ситуація ідентична роботі з одним диском. Перевага моделі з паралельним доступом у тому, що при одночасному надходженні кількох запитів на запис (читання) всі вони виконуватимуться незалежно на окремих дисках (рис. 3). Така ситуація типова, наприклад, у серверах. Відповідно до різних типів доступу існують і RAID-масивів, які прийнято характеризувати рівнями RAID. Крім типу доступу, рівні RAID розрізняються способом розміщення та формування надмірної інформації. Надмірна інформація може або розміщуватись на спеціально виділеному диску, або перемішуватися між усіма дисками. Способів формування цієї інформації дещо більше.

Найпростіший із них - це повне дублювання (100-відсоткова надмірність), або дзеркаловання. Крім того, використовуються коди з корекцією помилок, а також обчислення парності.

Рівні RAID

В даний час існує декілька стандартизованих RAID-рівнів: від RAID 0 до RAID 5. До того ж використовуються комбінації цих рівнів, а також фірмові рівні (наприклад, RAID 6, RAID 7). Найбільш поширеними є рівні 0, 1, 3 та 5.

RAID 0

RAID рівня 0, строго кажучи, не є надмірним масивом і не забезпечує надійності зберігання даних. Проте цей рівень знаходить широке застосування у випадках, коли необхідно забезпечити високу продуктивність дискової підсистеми. Особливо популярний цей рівень у робочих станціях. При створенні RAID-масиву рівня 0 інформація розбивається на блоки, які записуються на окремі диски (рис. 4), тобто створюється система з паралельним доступом (якщо, звичайно, розмір блоку це дозволяє). Завдяки можливості одночасного введення-виводу з кількох дисків RAID 0 забезпечує максимальну швидкість передачі даних та максимальну ефективність використання дискового простору, оскільки не потрібно місця для зберігання контрольних сум. Реалізація цього рівня дуже проста. В основному RAID 0 застосовується у тих областях, де потрібна швидка передача великого обсягу даних.

RAID 1 (Mirrored disk) RAID рівня 1 – це масив дисків зі 100-відсотковою надмірністю. Тобто дані при цьому просто повністю дублюються (дзеркалуються), за рахунок чого досягається дуженадійності (як, втім, та вартості). Зазначимо, що для реалізації рівня 1 не потрібно попередньо розбивати диски та дані на блоки. У найпростішому випадку два диски містять однакову інформацію та є одним логічним диском (рис. 5). При виході з ладу одного диска функції виконує інший (що абсолютно прозоро для користувача).

Крім того, цей рівень подвоює швидкість зчитування інформації, оскільки ця операція може виконуватись одночасно з двох дисків. Така схема зберігання інформації використовується в основному в тих випадках, коли ціна безпеки даних набагато вища за вартість реалізації системи зберігання.

RAID 2

RAID рівня 2 – це схема резервування даних з використанням коду Хеммінга (дивись нижче) для корекції помилок. Дані, що записуються, формуються не на основі блокової структури, як у RAID 0, а на основі слів, причому розмір слова дорівнює кількості дисків для запису даних в масиві. Якщо, наприклад, в масиві є чотири диски для запису даних, то розмір слова дорівнює чотирьом дискам. Кожен окремий біт слова записується окремий диск масиву. Наприклад, якщо масив має чотири диски для запису даних, то послідовність чотирьох бітів, тобто слово, запишеться на масив дисків таким чином, що перший біт виявиться на першому диску, другий біт - на другому і т.д.

Природно, що при обчисленні за вказаною формулою L округляється у більшу сторону до найближчого цілого числа. Втім, ніж зв'язуватися з формулами, можна скористатися іншим мнемонічним правилом: розрядність контрольного слова визначається кількістю розрядів, необхідним для двійкового уявлення розміру слова. Якщо, наприклад, розмір слова дорівнює чотирьом (у двійковому записі 100), то, щоб записати це число в двійковому вигляді, потрібно три розряди, отже, розмір контрольного слова дорівнює трьом. Отже, якщо є чотири диски для зберігання даних, потрібно ще три диски для зберігання контрольних даних. Аналогічно, за наявності семи дисків для даних (у двійковому записі 111) знадобиться три диски для зберігання контрольних слів. Якщо ж під дані відводиться вісім дисків (у двійковому записі 1000), потрібно вже чотири диски для контрольної інформації.

Код Хеммінга, який формує контрольне слово, заснований на використанні порозрядної операції «що виключає АБО» (XOR) (використовується також назва «нерівнозначність»).

Нагадаємо, що логічна операція XOR дає одиницю при розбіжності операндів (0 і 1) і нуль при їх збігу (0 і 0 або 1 і 1).

Саме контрольне слово, отримане за алгоритмом Хеммінга, - це інверсія результату порозрядної операції що виключає АБО номерів тих інформаційних розрядів слова, значення яких 1. Для ілюстрації розглянемо вихідне слово 1101. У першому (001), третьому (011) і четвертому (100) У розрядах цього слова стоїть одиниця.

Тому необхідно провести порозрядну операцію, що виключає АБО для цих номерів розрядів:

Саме контрольне слово (код Хеммінга) виходить при порозрядному інвертуванні отриманого результату, тобто дорівнює 001.

При зчитуванні даних знову розраховується код Хеммінгу та порівнюється з вихідним кодом. Для порівняння двох кодів використовується порозрядна операція «що виключає АБО». Якщо результат порівняння у всіх розрядах дорівнює нулю, то зчитування вірне, інакше його значення є номером помилково прийнятого розряду основного коду. Нехай, наприклад, вихідне слово дорівнює 1100000. Оскільки одиниці стоять у шостій (110) та сьомій (111) позиціях, контрольне слово одно:

Відповідно, знаючи, який саме біт помилковий, його легко виправити «на льоту».

RAID 2 - один із небагатьох рівнів, що дозволяють не тільки виправляти «на льоту» поодинокі помилки, а й виявляти подвійні. При цьому він є надлишковим із усіх рівнів з кодами корекції. Ця схема зберігання даних застосовується рідко, оскільки погано справляється з великою кількістю запитів, складна в організації і має незначні переваги перед рівнем RAID 3.

RAID 3

RAID рівня 3 - це відмовостійкий масив з паралельним введенням-виводом та одним додатковим диском, який записується контрольна інформація (рис. 7). При записі потік даних розбивається на блоки лише на рівні байт (хоча можливо і лише на рівні біт) і записується одночасно всі диски масиву, крім виділеного зберігання контрольної інформації. Для обчислення контрольної інформації (називається також контрольною сумою) використовується операція «виключає АБО» (XOR), що застосовується до блоків даних, що записуються. При виході з ладу будь-якого диска, дані на ньому можна відновити за контрольними даними та даними, що залишилися на справних дисках.

Розглянемо як ілюстрацію блоки розміром по чотири біти. Нехай є чотири диски для зберігання даних та один диск для запису контрольних сум. Якщо є послідовність біт 1101 0011 1100 1011, розбита на блоки по чотири біти, то для розрахунку контрольної суми необхідно виконати операцію:

Таким чином, контрольна сума, що записується на п'ятий диск, дорівнює 1001.

Якщо один з дисків, наприклад третій, вийшов з ладу, блок 1100 виявиться недоступним при зчитуванні. Однак його значення легко відновити за контрольною сумою та значеннями інших блоків, використовуючи ту саму операцію «що виключає АБО»:

Блок 3 = Блок 1 Блок 2 Блок 4

Контрольна сума.

У нашому прикладі отримаємо:

Блок 3 = 1101001110111001 = 1100.

RAID рівня 3 має набагато меншу надмірність, ніж RAID 2. Завдяки розбиттю даних на блоки RAID 3 має високу продуктивність. При зчитуванні інформації не здійснюється звернення до диска з контрольними сумами (у разі відсутності збою), що відбувається щоразу під час операції запису. Оскільки при кожній операції виводу-введення-виводу здійснюється звернення практично до всіх дисків масиву, одночасна обробка декількох запитів неможлива. Цей рівень підходить для програм з файлами великого об'єму та малою частотою звернень. Крім того, до переваг RAID 3 відносяться незначне зниження продуктивності при збої та швидке відновлення інформації.

RAID 4

RAID рівня 4 - це стійкий до відмови масив незалежних дисків з одним диском для зберігання контрольних сум (рис. 8). RAID 4 багато в чому схожий з RAID 3, але відрізняється від останнього насамперед значно більшим розміром блоку даних, що записуються (великим, ніж розмір даних, що записуються).

У цьому і є головна різниця між RAID 3 і RAID 4. Після запису групи блоків обчислюється контрольна сума (так само, як і у випадку RAID 3), яка записується на виділений для цього диск. Завдяки більшому, ніж у RAID 3, розмір блоку можливе одночасне виконання декількох операцій читання (схема незалежного доступу).

RAID 4 підвищує продуктивність передачі файлів малого обсягу (за рахунок розпаралелювання операції зчитування). Але оскільки при записі повинна обчислюватися контрольна сума на виділеному диску, одночасне виконання операцій тут неможливе (в наявності асиметричність операцій введення та виведення). Розглянутий рівень не забезпечує переваги швидкості при передачі даних великого обсягу. Ця схема зберігання розроблялася для додатків, де дані спочатку розбиті на невеликі блоки, тому немає необхідності додатково їх розбивати. RAID 4 є непоганим рішенням для файл-серверів, інформація з яких переважно зчитується і рідко записується. Ця схема зберігання даних має невисоку вартість, але її реалізація досить складна, як і відновлення даних під час збою.

RAID рівня 5 - це стійкий до відмови масив незалежних дисків з розподіленим зберіганням контрольних сум (рис. 9). Блоки даних та контрольні суми, які розраховуються так само, як і в RAID 3, циклічно записуються на всі диски масиву, тобто відсутній виділений диск для зберігання інформації про контрольні суми.

У випадку RAID 5 всі диски масиву мають однаковий розмір, однак загальна ємність дискової підсистеми, доступної для запису, стає менше одного диска.

Наприклад, якщо п'ять дисків мають розмір 10 Гбайт, фактичний розмір масиву становить 40 Гбайт, так як 10 Гбайт відводиться на контрольну інформацію. RAID 5, так само як і RAID 4, має архітектуру незалежного доступу, тобто на відміну від RAID 3 тут передбаченовеликий розмір

логічні блоки для зберігання інформації. Тому, як і у випадку з RAID 4, основний виграш такий масив забезпечує одночасної обробки кількох запитів.

Головною ж відмінністю між RAID 5 та RAID 4 є спосіб розміщення контрольних сум.

Наявність окремого (фізичного) диска, що зберігає інформацію про контрольні суми, тут, як і в трьох попередніх рівнях, призводить до того, що операції зчитування, що не вимагають звернення до диска, виконуються з великою швидкістю. Однак, при кожній операції запису змінюється інформація на контрольному диску, тому схеми RAID 2, RAID 3 і RAID 4 не дозволяють проводити паралельні операції запису.

RAID 5 позбавлений цього недоліку, оскільки контрольні суми записуються на всі диски масиву, що забезпечує можливість виконання кількох операцій зчитування чи запису одночасно.

Практична реалізація Для практичної реалізації RAID-масивів необхідні дві складові: власне масив жорстких дисків та RAID-контролер. Контролер виконує функції зв'язку з сервером (робочою станцією), генерації надлишкової інформації під час запису та перевірки під час читання, розподілу інформації з дисків відповідно до алгоритму функціонування..

Відмінною характеристикою RAID-контролерів є кількість каналів, що підтримуються, для підключення жорстких дисків. Незважаючи на те, що до одного каналу контролера можна підключити кілька SCSI-дисків, загальна пропускна здатність RAID-масиву буде обмежена пропускною здатністю одного каналу, яка відповідає пропускної спроможності SCSI-інтерфейс. Таким чином, використання кількох каналів може суттєво підвищити продуктивність дискової підсистеми.

При використанні IDE RAID-контролерів проблема багатоканальності постає ще гостріше, оскільки два жорсткі диски, підключені до одного каналу (більша кількість дисків не підтримується самим інтерфейсом), не можуть забезпечити паралельну роботу - IDE-інтерфейс дозволяє звертатися в певний момент часу тільки до одного диску . Тому IDE RAID-контролери мають бути як мінімум двоканальними.

Бувають також чотири-і навіть восьмиканальні контролери.

Основною функцією RAID-масиву є не збільшення ємності дискової підсистеми (як видно з його пристрою, таку ж ємність можна отримати і за менші гроші), а забезпечення надійності збереження даних та підвищення продуктивності.

Для серверів, крім того, висувається вимога безперебійності в роботі навіть у разі відмови одного з накопичувачів. Безперебійність у роботі забезпечується за допомогою гарячої заміни, тобто вилучення несправного SCSI-диска та встановлення нового без вимкнення живлення. Оскільки при одному несправному накопичувачі дискова підсистема продовжує працювати (крім рівня 0), гаряча заміна забезпечує відновлення прозоре для користувачів. Однак швидкість передачі і швидкість доступу при одному диску, що не працює, помітно знижується через те, що контролер повинен відновлювати дані з надлишкової інформації. Щоправда, з цього правила є виняток – RAID-системи рівнів 2, 3, 4 при виході з ладу накопичувача із надмірною інформацією починають працювати швидше! Це закономірно, оскільки в такому випадку рівень «на льоту» змінюється на нульовий, який має чудові швидкісні характеристики. Досі в цій статті йшлося про апаратні рішення. Але є і програмне, запропоноване, наприклад, фірмою Microsoft для Windows 2000 Server. Однак у цьому випадку деяка початкова економія повністю нейтралізується додатковим навантаженнямцентральний процесор


, який окрім основної своєї роботи змушений розподіляти дані по дисках і проводити розрахунок контрольних сум. Таке рішення може вважатися прийнятним лише у разі значного надлишку обчислювальної потужності та малого завантаження сервера.

Сергій Пахомов

Комп'ютерПрес 3"2002 Сьогодні ми поговоримо про RAID-масивах

. Розберемося, що це таке, навіщо це нам треба, яке воно буває і як усю цю пишність використовувати на практиці. Отже, по порядку: що таке RAID-масив або просто RAID Отже, по порядку: що таке? Розшифровується ця абревіатура як "Redundant Array of Independent Disks" або "надлишковий (резервний) масив незалежних дисків". Говорячи по-простому,

це сукупність фізичних дисків, об'єднаних на один логічний. Зазвичай буває навпаки - усистемний блок

встановлений один фізичний диск, який ми розбиваємо на кілька логічних. Тут обернена ситуація – кілька жорстких дисків спочатку об'єднуються в один, а потім операційною системою сприймаються як один. Тобто. ОС свято впевнена, що має фізично лише один диск.бувають апаратні та програмні.

Апаратні встановлений один фізичний диск, який ми розбиваємо на кілька логічних. Тут обернена ситуація – кілька жорстких дисків спочатку об'єднуються в один, а потім операційною системою сприймаються як один. Тобто. ОС свято впевнена, що має фізично лише один диск.створюються до завантаження ОС за допомогою спеціальних утиліт, зашитих в RAID-контролер- щось на зразок BIOS. Внаслідок створення такого RAID-масивувже на стадії інсталяції ОС, дистрибутив "бачить" один диск.

Програмні встановлений один фізичний диск, який ми розбиваємо на кілька логічних. Тут обернена ситуація – кілька жорстких дисків спочатку об'єднуються в один, а потім операційною системою сприймаються як один. Тобто. ОС свято впевнена, що має фізично лише один диск.створюються засобами ОС. Тобто. під час завантаження операційна система "розуміє", що має кілька фізичних дисків і тільки після старту ОС, за допомогою програмного забезпеченнядиски поєднуються в масиви. Природно сама операційна система розташовується не так RAID-масиві, оскільки встановлюється до створення.

"Навіщо все це потрібно?" - Запитаєте Ви? Відповідаю: для підвищення швидкості читання/запису даних та/або підвищення стійкості до відмов і безпеки.

"Яким чином Отже, по порядку: що такеможе збільшити швидкість чи убезпечити дані?" - для відповіді це питання розглянемо основні типи RAID-масивівЯк вони формуються і що це дає в результаті.

RAID-0. Називається також "Stripe" або "Стрічка". Два або більше жорстких дисків поєднуються в один шляхом послідовного злиття та підсумовування обсягів. Тобто. якщо ми візьмемо два диски об'ємом 500Гб і створимо їх RAID-0, ОС це буде сприйматися як один диск обсягом в терабайт. При цьому швидкість читання/запису цього масиву буде вдвічі більша, ніж у одного диска, оскільки, наприклад, якщо база даних розташована таким чином фізично на двох дисках, один користувач може читати дані з одного диска, а інший користувач робити запис на інший диск одночасно. У той час як у разі розташування бази на одному диску, сам жорсткий дискЗавдання читання/запису різних користувачів виконуватиме послідовно. RAID-0дозволить виконувати читання/запис паралельно. Як наслідок - чим більше дисків у масиві RAID-0тим швидше працює сам масив. Залежність прямопропорційна – швидкість зростає у N разів, де N – кількість дисків у масиві.
У масиву RAID-0є лише один недолік, який перекриває всі плюси від його використання – повна відсутність стійкості до відмов. У разі смерті одного з фізичних дисків масиву вмирає весь масив. Є старий жарт на цю тему: "Що означає "0" у назві RAID-0? - обсяг відновлюваної інформації після смерті масиву!

RAID-1. "Mirror" або "Дзеркало". Два або більше жорстких дисків поєднуються в один шляхом паралельного злиття. Тобто. якщо ми візьмемо два диски об'ємом 500Гб і створимо їх RAID-1, ОС це буде сприйматися як один диск об'ємом в 500Гб. При цьому швидкість читання/запису цього масиву буде така ж, як у одного диска, оскільки, читання/запис інформації проводяться на обидва диски одночасно. RAID-1не дає виграшу у швидкості, проте забезпечує велику відмовостійкість, оскільки у разі смерті одного з жорстких дисків завжди є повний дубль інформації, що знаходиться на другому диску. При цьому необхідно пам'ятати, що стійкість до відмови забезпечується тільки від смерті одного з дисків масиву. Якщо дані були видалені цілеспрямовано, то вони видаляються з усіх дисків масиву одночасно!

RAID-5. Безпечніший варіант RAID-0. Обсяг масиву розраховується за формулою (N - 1) * DiskSize RAID-5з трьох дисків по 500Гб, ми отримаємо масив об'ємом 1 терабайт. Суть масиву RAID-5у тому, що кілька дисків поєднаються в RAID-0, а на останньому дискузберігається так звана "контрольна сума" - службова інформація, призначена для відновлення одного з дисків масиву у разі його смерті. Швидкість запису в масиві RAID-5дещо нижче, оскільки витрачається час на розрахунок та запис контрольної суми на окремий диск, проте швидкість читання така ж, як у RAID-0.
Якщо один із дисків масиву RAID-5вмирає, різко зменшується швидкість читання/запису, оскільки всі операції супроводжуються додатковими маніпуляціями. Фактично RAID-5перетворюється на RAID-0 і якщо вчасно не подбати про відновлення RAID-масивує суттєвий ризик втратити дані повністю.
З масивом RAID-5можна використовувати про Spare-диск, тобто. запасний. Під час стабільної роботи RAID-масивуцей диск простоює та не використовується. Однак у разі настання критичної ситуації відновлення RAID-масивупочинається автоматично – на запасний диск відновлюється інформація із пошкодженого за допомогою контрольних сум, розташованих на окремому диску.
RAID-5створюється як мінімум із трьох дисків і рятує від одиночних помилок. У разі одночасної появи різних помилокна різних дисках RAID-5не рятує.

RAID-6- є покращеним варіантом RAID-5. Суть та сама, тільки для контрольних сум використовується вже не один, а два диски, причому контрольні суми вважаються за допомогою різних алгоритмів, що істотно підвищує відмовостійкість всього RAID-масивув цілому. RAID-6збирається мінімум із чотирьох дисків. Формула розрахунку обсягу масиву виглядає як (N - 2) * DiskSizeде N - кількість дисків у масиві, а DiskSize - обсяг кожного диска. Тобто. при створенні RAID-6з п'яти дисків по 500Гб, ми отримаємо масив об'ємом 1,5 терабайта.
Швидкість запису RAID-6нижче ніж у RAID-5 приблизно на 10-15%, що зумовлено додатковими тимчасовими витратами на розрахунок та запис контрольних сум.

RAID-10- так само іноді називається RAID 0+1або RAID 1+0. Є симбіозом RAID-0 і RAID-1. Масив будується мінімум із чотирьох дисків: на першому каналі RAID-0, на другому RAID-0 для підвищення швидкості читання/запису і між собою вони в дзеркалі RAID-1 для підвищення стійкості до відмов. Таким чином, RAID-10поєднує в собі плюс перших двох варіантів - швидкий та відмовостійкий.

RAID-50- аналогічно RAID-10 є симбіозом RAID-0 і RAID-5 - фактично будується RAID-5, тільки його елементами є не самостійні жорсткі дискиа масиви RAID-0. Таким чином, RAID-50дає дуже хорошу швидкість читання/запису та містить стійкість та надійність RAID-5.

RAID-60- та сама ідея: фактично маємо RAID-6, зібраний з декількох масивів RAID-0.

Також існують інші комбіновані масиви RAID 5+1і RAID 6+1- вони схожі на RAID-50і RAID-60з тією різницею, що базовими елементами масиву є не стрічки RAID-0, а дзеркала RAID-1.

Як Ви самі розумієте комбіновані RAID-масиви: RAID-10, RAID-50, RAID-60та варіанти RAID X+1є прямими спадкоємцями базових типів масивів RAID-0, RAID-1, RAID-5і RAID-6і служать лише підвищення чи швидкості читання/запису, чи підвищення отказоустойчивости, несучи у своїй функціонал базових, батьківських типів RAID-масивів.

Якщо перейти до практики та поговорити про застосування тих чи інших RAID-масивіву житті, то логіка досить проста:

RAID-0у чистому вигляді не використовуємо взагалі;

RAID-1використовуємо там, де не особливо важлива швидкість читання/запису, але важлива стійкість до відмов - наприклад на RAID-1добре ставити операційні системи. У такому разі до дисків ніхто крім ОС не звертається, швидкості самих жорстких дисків для роботи цілком достатньо, стійкість до відмови забезпечена;

RAID-5ставимо там, де потрібна швидкість і стійкість до відмов, але не вистачає грошей на покупку більшої кількості жорстких дисків або є необхідність відновлювати масиви у разі їх пошкодження, не припиняючи роботи - тут нам допоможуть запасні Spare-диски. Звичайне застосування RAID-5- сховища даних;

RAID-6використовується там, де просто страшно чи є реальна загроза смерті одразу кількох дисків у масиві. Насправді зустрічається досить рідко, переважно у параноїків;

RAID-10- використовується там, де потрібно, щоб працювало швидко і надійно. Також основним напрямком для використання RAID-10є файлові сервери та сервери баз даних.

Знову ж таки, якщо ще спростити, то приходимо до висновку, що там де немає великої та об'ємної роботи з файлами цілком достатньо RAID-1- Операційна система, AD, TS, пошта, проксі і т.д. Там же, де потрібна серйозна робота з файлами: RAID-5або RAID-10.

Ідеальним рішенням для сервера баз даних є машина з шістьма фізичними дисками, два з яких об'єднані в дзеркало RAID-1і на ньому встановлена ​​ОС, а чотири, що залишилися, об'єднані в RAID-10для швидкої та надійної роботиіз даними.

Якщо прочитавши, все викладене вище Ви вирішили встановити на своїх серверах встановлений один фізичний диск, який ми розбиваємо на кілька логічних. Тут обернена ситуація – кілька жорстких дисків спочатку об'єднуються в один, а потім операційною системою сприймаються як один. Тобто. ОС свято впевнена, що має фізично лише один диск., але не знаєте, як це робити і з чого почати - звертайтесь до нас! - ми допоможемо підібрати необхідне обладнання, а також проведемо інсталяційні роботи з впровадження RAID-масивів.

Порівнюємо продуктивність рішень одного цінового рівня

Цікавий факт: так званий Experience Index у Windows 7, що оцінює продуктивність основних підсистем ПК, для типового твердотільного диска(SSD), причому далеко не найповільнішого (у районі 200 МБ/с на читання та запис, випадковий доступ - 0,1 мс), показує значення 7,0, у той час як індекси всіх інших підсистем (процесор, пам'ять, графіка , ігрова графіка) у тих же десктопних системах на базі старших ЦП (з середнім за теперішнім часом обсягом пам'яті DDR3-1333 в 4 ГБ та середньою ж ігровою відеокартою на кшталт AMD Radeon HD 5770) оцінюються значеннями помітно вище 7,0 (а саме - 7,4-7,8; у даного критерію Windows 7 логарифмічна шкала, так що різниця в десяті частки виливається в десятки відсотків абсолютних значень). Тобто швидкий «побутовий» SSD на шині SATA, на думку Windows 7, є найвужчим місцем навіть у не топових за теперішнім часом настільних ПК. Яка ж має бути (поміркована?) продуктивність системного диска, щоб «велика і могутня» «Сімка» вважала її гідною інших компонентів подібного ПК?.. :)

Питання це, мабуть, риторичне, оскільки на «Ікспірієнс-індекс» Windows 7 нині мало хто орієнтується при доборі конфігурації свого десктопу. І SSD вже міцно вкоренилися в умах користувачів як безальтернативний варіант, якщо від дискової підсистеми хочеться вичавити максимум і отримати зручну, «без гальм» роботу. Але чи це так насправді? Чи самотня Windows 7 у своїх оцінках реальної корисності SSD? І чи є альтернатива SSD у потужних десктопах? Особливо якщо не дуже хочеться побачити безвихідну порожнечу у своєму гаманці… Ми ризикнемо запропонувати один із можливих варіантівзаміни.

Які основні недоліки сучасних SSD? Якщо не брати до уваги "довгограючі" суперечки з приводу їх надійності, довговічності та деградації з часом, то таких недоліків, за великим рахунком, два: невелика ємність і велика вартість. Дійсно, середньонький MLC SSD на 128 ГБ нині коштує близько 8000 руб. (Ціна на момент написання статті; зрозуміло, вона сильно залежить від моделі, але порядок цін поки що такий). Це, звичайно, не 600 рублів за 1 ГБ, як для пам'яті DDR3, а на порядок менше, але все ж таки далеко не так мало, як для традиційних магнітних вінчестерів. Дійсно, дуже продуктивний «семитисячник» на 1000 ГБ з максимальною швидкістю читання/запису близько 150 МБ/с (що, до речі, не набагато менше, ніж у SSD за 8 тис. руб.!) Нині можна купити менш ніж за 2000 руб. (наприклад, Hitachi 7K1000.C чи щось корейське). Питома вартість гігабайта простору у разі складе всього 2 (два) рубля! Ви відчуваєте різницю з SSD з його 60 карбованцями за гігабайт? ;) Та й чи так вже велика «провалля» між ними в типових десктопних додатках з великою кількістю послідовних звернень? Наприклад, при роботі з відео, аудіо, графікою та ін. Адже типова швидкість послідовного читання у MLC SSD (160-240 МБ/с) не набагато перевищує таку на перших 120 гігабайтах простору того ж «терабайтника-семитисячника» (150 МБ/ с). А за швидкістю послідовного запису вони взагалі зразковий паритет (ті самі 150 МБ/с проти 70-190 у SSD). Так, за часом випадкового доступу вони абсолютно непорівнянні, але й ми не сервер собі збираємо на робочий стіл.

Більше того, для десктопу ті ж 128 ГБ на сьогодні - обсяг вкрай несерйозний (80 ГБ - взагалі смішний). Ледве вміщує один-два системні розділи з ОС та основними програмами. Де зберігати численні мультимедійні файли? Куди ставити іграшки, кожна з яких тепер потягне на 5-20 ГБ у розпакованому вигляді? Коротше, без нормального ємного гвинта все одно нікуди. Питання тільки в тому, чи буде він системним або додатковим у комп'ютері.

А якщо підійти з іншого боку? Якщо вже без НЖМД (згадуємо стару добру абревіатуру - накопичувачі на жорстких магнітних дисках, або просто "вінчестери") з ПК нікуди, то чи не об'єднати їх у RAID-масив? Тим більше, що простенький RAID-контролер багатьом з нас дістався, по суті, «безкоштовно» - у південному мосту материнських плат на чіпсетах AMD, Intel або Nvidia. Наприклад, ті ж 8000 рублів можна витратити не на SSD, а на 4 «терабайтники». Об'єднаємо їх у масив(и) - тоді і докуповувати ємний НЖМД для зберігання даних не доведеться, тобто навіть заощадимо. Або як другий варіант - разом купівлі одного SSD та одного диска на 2-3 ТБ можна придбати 4 диски по 1,5-2 ТБ.

Більше того, скажімо, RAID 0 з чотирьох дисків матиме не тільки вчетвероємну ємність, а й у 4 рази вищу лінійну швидкість читання-запису. А це вже 400-600 МБ/с, що поодинокому SSD тієї ж цінинавіть не снилося! Таким чином, подібний масив буде працювати набагато швидше за SSD, принаймні, з потоковими даними (читання/запис/редагування відео, копіювання великих файлівта багато інших. ін). Не виключено, що і в інших типових задачах персонального комп'ютератакий масив поведеться аж ніяк не гірше за SSD - адже відсоток послідовних операцій у таких завданнях дуже високий, та й випадкові звернення, як правило, виробляються на досить компактній ділянці такого ємного накопичувача (файл підкачки, тимчасовий файл фоторедактора тощо), тобто переміщення головок усередині цієї ділянки відбуватиметься набагато швидше, ніж у середньому по диску - за час у пару-трійку (мілісекунд), що, безумовно, позитивно позначиться на його продуктивності. Якщо ж багатодисковий RAID-масив ще й кешується в ОС, то від нього можна очікувати значну швидкість і на операціях з дрібними блоками даних.

Щоб перевірити наші припущення, ми протестували чотирьох дискові масиви RAID 0 і RAID 5 з терабайтних дисків Hitachi Deskstar E7K1000 зі швидкістю обертання 7200 об/хв та буфером 32 МБ. Так, вони дещо повільніше за швидкістю пластин, ніж новіші і продаються нині по 1800-1900 руб./шт. накопичувачі Hitachi 7K1000.C тієї ж ємності. Однак їхня мікропрограма краще оптимізована для роботи дисків у масивах, тому, кілька недобравши заповітні 600 МБ/с за максимальною швидкістю читання 4-дискового RAID 0, ми отримаємо кращу продуктивністьу завданнях із чималою кількістю випадкових звернень. А знайдені нами закономірності можна буде поширити і на масиви з більш швидких (та ємних) моделей дисків різних виробників.

Використовуючи плати на чіпсетах Intel з південним мостом ICH8R/ICH9R/ICH10R (і пізніші), чотири терабайтні диски оптимально, на наш погляд, організувати наступним чином. Завдяки технології Intel Matrix RAID з першої половини об'єму кожного з дисків робимо масив RAID 0 ємністю 2 ТБ (щоб він без спеціальних хитрощів розумівся «операційками» нижче Vista), який забезпечить нам найвищу продуктивність системних розділів, швидкий запускдодатків та ігор, а також високу швидкість оперативної роботиз мультимедійним та іншим контентом. А для більш надійного зберігання важливих нам даних другу половину об'єму цих дисків ми об'єднаємо в масив RAID 5 (до речі, теж далеко не найгіршої продуктивності, в чому ми переконаємося трохи нижче). Таким чином, лише за 8 тис. руб. ми отримаємо надшвидкий системний диск на 2 ТБ, і надійний і ємний «архівний» том на 1,5 ТБ. Саме в такій конфігурації з двох масивів, створених нами зі значеннями за умовчанням, ми будемо проводити наше подальше тестування. Втім, особливо недовірливі нелюбителі RAID5 на інтелівських контролерах можуть замість нього побудувати RAID10 у півтора рази меншого об'єму - продуктивність його на читання даних буде нижчою, ніж у RAID5, при записі (з кешуванням) вони приблизно рівноцінні, зате надійність і вилученість даних при розвалі масивів буде кращим (у половині випадків RAID10 можна оживити при виході з ладу навіть двох дисків).

Утиліта Intel Matrix Storage Manager дозволяє включати та вимикати кешування запису на такі дискові масиви засобами операційної системи(тобто, використовуючи оперативну пам'ятьПК), див. третій зверху рядок у правому полі Information на скріншоті:

Кешування здатне кардинально прискорити роботу масивів з дрібними файлами та блоками даних, а також швидкість запису на масив RAID 5 (що часом дуже критично). Тому ми для наочності провели тести з увімкненим та відключеним кешуванням. Для довідки ми також торкнемося нижче питань навантаження на процесор при включеному кешуванні.

Випробування проводилося нами на тестовій системі, що представляє типовий, не найпотужніший за нинішніх часів десктоп:

  • процесор Intel Core 2 Duo E8400 (3 ГГц);
  • 2 ГБ системної пам'яті DDR2-800;
  • плата ASUS P5Q-E на чіпсеті Intel P45 Express з ICH10R;
  • відеоприскорювач AMD Radeon HD 5770

на системному диску Seagate ST950042AS знаходилися ОС Windows 7 x64 Ultimate і Windows XP SP3 Pro (масиви, що тестуються, і накопичувачі випробовувалися в «чистому» стані). Як бенчмарки, за результатами яких ми будемо судити про суперництво SSD з традиційними RAID, нами тут використовувалися програми ATTO Disk Benchmark 2.41, Futuremark PCMark05, Futuremark PCMark Vantage x86, Intel NAS Performance Toolkit 1.7 та ін. Тести проводилися п'ятиразово та результати. Для орієнтування внизу діаграм з результатами тестів наведено дані для швидкого одиночного накопичувача Seagate Barracuda XT ST32000641AS ємністю 2 ТБ, тобто такою самою, як у «системного» RAID 0 із чотирьох Hitachi Deskstar E7K1000 HDE7210, які ми випробували.

Честь недорогого, але вельми продуктивного SSD ємністю 128 ГБ та ціною (на момент написання статті) в районі 8000 руб. захищала модель PNY Optima SSD 128GB MLC. Спочатку подивимося на неї трохи докладніше.

SSD PNY Optima 128GB Gen 2

Модель з номером P-SSD2S128GM-CT01 (прошивка 0309) є типовим 2,5-дюймовим SATA SSD в стильному чорному металевому корпусізавтовшки 9,5 мм. Його виробник - компанія, більш відома своїми флешками та модулями пам'яті.


PNYOptimaSSD 128GBMLC

Накопичувач заснований на флеш-пам'яті Intel 29F64G08CAMDB з MLC-комірками та контролері JMicron JMF612, який дозволяє цьому SSD працювати не тільки по Serial ATA, але і по інтерфейсу USB 2.0 (міні-роз'єм останнього знаходиться поруч із портом SATA у задньому торці корпусу диска).

Тобто цей твердотільний накопичувач можна використовувати і як ударостійке переносне сховище. Щоправда, USB-кабель комплектом постачання не передбачено. Зате ціну виробу ніяк не можна назвати завищеною.


Плата накопичувачаPNYOptimaSSD 128GBMLC

Виробник обіцяє для цієї моделі швидкість читання 235 МБ/с та швидкість запису 150 МБ/с (вона на практиці виявилася навіть трохи вищою). Кеш-пам'ять диска складає 64 МБ, підтримка TRIMвбудована, ударостійкість заявляється на рівні 1500g, а діапазон робочих температур від -10 до +70°C. Виробник дає 3 роки гарантії на цю модель з MTBF в 1,5 млн. годин.

До речі, не слід помилятися і вважати популярні MLC SSD на контролері JMicron JMB612 рішеннями нижчого сорту. Накопичувачі на цьому контролері виглядають в середньому анітрохи не гірше, ніж SSD подібної ємності і ціни на контролерах від Indilinx (IDX110), Intel, SandForce (SF1222) і Samsung, навіть виграючи у них у ряді дискових бенчмарків.

Результати тестів

Максимальна швидкість послідовного читання та запису корисних даних для SSD PNY Optima 128GB за результатами тесту ATTO Disk Benchmark 2.41 (запис та читання файлу об'ємом 256 МБ блоками від 64 КБ до 8 МБ) склала відповідно 238 і 155 МБ/с, що трохи вище значень (див. діаграму).

Цікаво, що низькорівневий тест HD Tach RW 3.0, що використовує звернення до накопичувача в обхід файлової системи, показав для цих двох параметрів значення 217 і 165 МБ/с відповідно (див. графік). Що ж до пари випробуваних нами чотиридискових RAID-масивів, то RAID 0 показав максимальну швидкість читання/запису великих файлів під 450 МБ/с (це підтверджується і графіком HD Tach RW 3.0), що вдвічі-втричі більше, ніж у SSD! Щоправда, включення кешування запису (WC=yes на діаграмах) засобами Windowsдещо знижує швидкість послідовного запису, а також читання, але не настільки критично, щоб це можна було вважати неприйнятним.

Що ж до RAID 5, організованого на другій половині наших випробуваних НЖМД, то максимальна швидкість послідовного читання цього масиву перевалює за 270 МБ/с (що помітно вище, ніж у будь-якого сучасного магнітного вінчестера!), а швидкість послідовного запису кардинально залежить від кешування в Windows: без нього вона ледве досягає абсолютно неприйнятних 40-50 МБ/с, тоді як з ним підвищується більш ніж утричі (див. також графік HD Tach RW 3.0), хоча все одно не досягає такої під час читання RAID 5, як це було у RAID 0. Але в будь-якому випадку, тут наш RAID 5 працює помітно швидше одиночного «семитисячника» Seagate Barracuda XT.

Інша істотна користь від Windows-кешування масивів дисків – кардинальне прискорення роботи з дрібними (менше 64 КБ) файлами та блоками даних. Це видно з результатів тесту ATTO Disk Benchmark 2.41 (про вертикалі зліва тут вказаний розмір блоку даних в КБ; колонки справа - значення швидкості в КБ/с).


RAID 0 без кешування


RAID 0 з кешуванням


RAID 5 без кешування


RAID 5 з кешуванням

Як видно, при цьому прискорюється робота не тільки під час запису, а й при читанні. Загалом використання кешування масивів в ОС є фактично неодмінною умовою, якщо ви хочете отримати на них хорошу продуктивність не тільки з потоковими даними, але й у всьому іншому (наприклад, як системного диска).

Роботу кешування операцій з RAID через оперативну пам'ять комп'ютера (причому як при читанні, так і при записі) наочно демонструє наступна діаграма, яка зазвичай наводиться в якості ілюстрації швидкості роботи дискового інтерфейсу (SATA, SAS тощо).

Швидкість буферизованого читання в 3-5 ГБ/с – це значення одного порядку зі смугою пропускання системної пам'яті у ПК типу нашого тестового. Шина DMI, по якій південний міст інтелівських чіпсетів спілкується з системою, має набагато нижчий потенціал, рівний, по суті, шині PCI Express x4 першого покоління (тобто 1 ГБ/с одному напрямку). Другий корисний висновок із цієї діаграми - для RAID-масивів (навіть без кешування) швидкість передачі даних по шині (кільком шинам SATA) від хоста до накопичувачів зростає умовно пропорційно числу дисків у масиві. І для RAID 0, наприклад, у рази перевищує швидкість обміну даними з одиночним SSD на шині SATA. Висновок, загалом, цілком очевидний.

До речі, середній час випадкового доступу до масивів (дрібними блоками) при читанні не залежить від кешування Windows, а ось при записі змінюється істотно (див. діаграму). Причому для найпростішого (програмного) RAID 5 без кешування воно непристойно велике.

Що ж до питання додаткового навантаження на процесора від кешування, то вона, безумовно, є, але для більш-менш сучасних десктопів її не можна назвати занадто обтяжливою. Погляньмо на графіки завантаження ЦП при виконанні того ж тесту ATTO:

В даний час існує декілька стандартизованих RAID-рівнів: від RAID 0 до RAID 5. До того ж використовуються комбінації цих рівнів, а також фірмові рівні (наприклад, RAID 6, RAID 7). Найбільш поширеними є рівні 0, 1, 3 та 5.
RAID 4 підвищує продуктивність передачі файлів малого обсягу (за рахунок розпаралелювання операції зчитування). Але оскільки при записі повинна обчислюватися контрольна сума на виділеному диску, одночасне виконання операцій тут неможливе (в наявності асиметричність операцій введення та виведення). Розглянутий рівень не забезпечує переваги швидкості при передачі даних великого обсягу. Ця схема зберігання розроблялася для додатків, де дані спочатку розбиті на невеликі блоки, тому немає необхідності додатково їх розбивати. RAID 4 є непоганим рішенням для файл-серверів, інформація з яких переважно зчитується і рідко записується. Ця схема зберігання даних має невисоку вартість, але її реалізація досить складна, як і відновлення даних під час збою.
Графіки завантаження ЦП без кешування RAID

І для RAID 0, і для RAID 5 завантаження ЦП під час читання та запису без RAID-кешування Windows - одиниці відсотків. Якщо ж кешування включити, то малих блоках завантаження ЦП зростає до десятків відсотків, часом перевалюючи за 50% (ліві частини графіків нижче).

В даний час існує декілька стандартизованих RAID-рівнів: від RAID 0 до RAID 5. До того ж використовуються комбінації цих рівнів, а також фірмові рівні (наприклад, RAID 6, RAID 7). Найбільш поширеними є рівні 0, 1, 3 та 5.

RAID 4 підвищує продуктивність передачі файлів малого обсягу (за рахунок розпаралелювання операції зчитування). Але оскільки при записі повинна обчислюватися контрольна сума на виділеному диску, одночасне виконання операцій тут неможливе (в наявності асиметричність операцій введення та виведення). Розглянутий рівень не забезпечує переваги швидкості при передачі даних великого обсягу. Ця схема зберігання розроблялася для додатків, де дані спочатку розбиті на невеликі блоки, тому немає необхідності додатково їх розбивати. RAID 4 є непоганим рішенням для файл-серверів, інформація з яких переважно зчитується і рідко записується. Ця схема зберігання даних має невисоку вартість, але її реалізація досить складна, як і відновлення даних під час збою.
Графіки завантаження ЦП з кешуванням RAID

Цікаво, що для RAID 5 навантаження на процесор при цьому трохи нижче ніж для RAID 0 - мабуть, позначається більше висока швидкістьчитання/записи на другий випадок. Крім того, при збільшенні розміру блоку даних навантаження на процесор знижується, наближаючись до такої з відключеним кешування блоків розміром 64 КБ і вище. Безперечно, це лише прикидка, ілюстрація питання. Цей аспект можна було б дослідити більш скрупульозно, у «чистому вигляді». Але в даному випадку для нас це не є метою статті, оскільки питання, яке нас цікавить тут, - яка продуктивність накопичувачів.

Останню ми оцінювали, зокрема, за комплексними тестами, що імітують роботу різноманітних завдань під Windows – PCMark Vantage, PCMark05 та Intel NAS Performance Toolkit. Детальні результати по кожному патерну цих тестів наведено у загальній таблиці. А в тілі статті ми представимо лише підсумкові діаграми, що дають уявлення про усереднену продуктивність накопичувачів під Windows.

У тесті PCMark05 дана модель SSD випереджає 4-дисковий RAID 0 менш ніж удвічі. Так, це помітна перевага, але не така фатальна, як при порівнянні з одиночним вінчестером. Цікаво, що досягається ця перевага лише у трьох з п'яти патернів PCMark05 (в основному – при запуску Windowsі додатків), тоді як у патерні Virus Scan наш RAID 0 виявляється на 10% швидше, ніж SSD, а в патерні File Write - взагалі швидше, ніж SSD, більш ніж утричі!

Кешування масивів збільшує їх продуктивність в даному бенчмарку приблизно в півтора рази, хоча одиночний Seagate Barracuda XT виявляється все ж таки трохи швидше, ніж тестований RAID 5. Втім, ми і не пропонували вам використовувати даний RAID 5 для основних системних розділів і запуску додатків. ;) А от при записі на цей «архівний» том файлів (патерн File Write) його швидкість явно вища, ніж одиночний диск.

У свіжому тесті PCMark Vantage під Windows 7 перевага SSD над нашими масивами переважна (в середньому мінімум утричі). Очевидно, патерни даного бенчмарку дуже активно оперують псевдовипадковими зверненнями до накопичувачів, у чому SSD поза конкуренцією.

Проте аналіз результатів за патернами (див. табл.) показує, що «не всі коту Масляна» - у ряді завдань наш RAID 0 не тільки має з SSD близьку швидкість (Movie Maker, тобто редагування відео), але і може суттєво випереджати його (Media Center). Таким чином, принаймні для медіацентру масив вигідніший, ніж SSD (це стосується і його значно більшої ємності). Кешування тут також додає 20-30% до середньої продуктивності масивів, роблячи навіть програмний RAID 5 цілком конкурентоспроможним з поодиноким топовим «двотерабайтником».

У свіжому і, на наш погляд, більш реалістичному тесті Intel NAS Performance Toolkit, який використовує дещо іншу філософію бенчмаркінгу, ніж «трекові» PCMark, - зокрема безпосередню роботу з файловою системоютестованого накопичувача, а не відтворення заздалегідь записаних (в іншій системі) команд звернення до диска всередині попередньо створеного тимчасового файлу, - ситуація ще більше втілює багатодискові RAID. У середньому, наш RAID 0 тут випереджає твердотільний накопичувач не лише з кешуванням (у півтора рази!), але й без нього! А програмний «архівний» RAID 5 з кешування виявляється швидше, ніж одиночний диск Barracuda XT.

При детальному розгляді (див. табл.) виявляється, що в 10 з 12 патернів RAID 0, що кешується, швидший, ніж SSD! Це стосується і роботи з відео, і Content Creation (створення контенту), і офісної роботи, обробки фотографій (Photo Album), і копіювання файлів. Лише при 4-потоковому відтворенні відео та копіюванні директорії з багатьма файлами з диска твердотільний накопичувач здобув над RAID 0 з традиційних вінчестерів. На цій оптимістичній ноті ми перейдемо до висновку.

Висновок

Власне, все вже сказано вище. При грамотному виборі традиційних вінчестерів на магнітних пластинах їх масиви з 4 накопичувачів цілком здатні посперечатися за продуктивністю в типових завданнях настільного ПК з одиночним SSD тієї ж вартості! Більше того, за ціною гігабайта простору та за місткістю такі масиви незрівнянно вигідніші. твердотільних накопичувачів. А можливість (у разі інтелівських чіпсетів) одночасно зі швидким RAID 0 створити на частині простору НЖМД ще й ємний захищений «архівний» RAID 5 для зберігання найбільш важливих даних взагалі не має адекватних за ціною аналогів серед SSD. Тож вибір за вами. Тільки не забувайте включати кешування RAID-масивів засобами відповідної утиліти під Windows - без цього задоволення від використання продуктивного, ємного та економічного рішення на вашому робочому столі буде неповним.

І ще кілька ремарок - щодо енергоспоживання та надійності даних рішень. Безумовно, 0,5-3 Вт споживання одного SSD не йдуть у жодне порівняння з 20-40 Вт ненажерливості масиву з чотирьох НЖМД. Однак і ми розглядаємо не ноутбук / неттоп, а повноцінний десктоп (інакше, власне, такий RAID і нема чого городити). Тому споживання треба оцінювати у сумі. А на тлі набагато більшої ненажерливості типових десктопних процесорів (100-200 Вт разом із материнською платою) і відеокартою (50-300 Вт) ще пара десятків ват на накопичувачі зовсім не здається марнотратством (тільки параноїк буде вважати зайві кіловатгодини від них на своєму домашньому електролічильнику:)). Тим більше якщо взяти до уваги, що до SSD вам все одно доведеться докуповувати один-два НЖМД (для прикидки: 20Вт·8час·30дней=4,8кВт·ч, тобто максимум 15-20 додаткових рублів на електрику на місяць). Що ж до надійності обох рішень, то і до SSD, і до RAID на чіпсетних контролерах, і навіть до НЖМД в Мережі можна знайти численні претензії, хоча виробники обіцяють їм мільйонногодинні MTBF. Тому в будь-якому випадку, найкращим захистом від втрати даних є їхнє регулярне резервування на незалежних носіях. І про це ніколи не слід забувати.

На закуску - діаграма, що геометрично усереднює продуктивність (в МБ/с) протестованих накопичувачів по всіх 26 патернам тестів PCMark05 (5 патернів), PCMark Vantage x86 (7 патернів), Intel NAS Performance Toolkit (12 патернів) та читання/за ATTO Disk Benchmark (2 патерни). Дивіться та розмірковуйте. ;)

Роблячи аудит продуктивності систем на базі 1С, ми дуже часто стикаємося зі значними проблемами дисковій системі, спричиненими неправильною її архітектурою. Тому ми вирішили створити спеціальний RAID-калькулятор, який дозволяє прорахувати потенційну продуктивність дискової підсистеми та полегшити процес її проектування. Звичайно, крім дискової підсистеми важливо правильно підібрати й інші компоненти серверної платформи, процес підбору яких добре описаний у статті Проектування сервера 1С.

RAID-калькулятор



Реалізація дискових підсистем може бути різноманітна: можуть використовуватися локальні диски, підключені до вбудованого контролера, або використовувати зовнішній контролер, і можуть використовуватися системи SAN (СХД, Storage). Але у всіх способах реалізації диски поєднуються в логічні пули, які називаються RAID-масивами. Таке об'єднання вирішує переважно питання безпеки даних, тобто. у разі виходу з ладу одного з дисків логічного масиву - він продовжує працювати без зупинки сервісу, а головне - без втрати даних. А також об'єднання дисків у пул може вирішувати питання продуктивності пулу, наприклад, RAID 0 значно збільшує швидкість читання, але при цьому збільшує можливість виходу з ладу масиву.

Отже, або просто– це технологія віртуалізації даних, яка об'єднує кілька дисків у логічний елемент для підвищення стійкості до відмов і підвищення продуктивності.

IOPS

p align="justify"> Важливим показником продуктивності дискової підсистеми є кількість елементарних операцій в одиницю часу (IOPS), які може виконати диск. Для дискової підсистеми це операції читання та запису даних. При плануванні навантаження для дискової підсистеми важливо уявляти, яке навантаження даватиме той чи інший сервіс на дискову підсистему. Зазвичай такі значення виводяться емпіричним шляхом згідно з вже отриманим досвідом на подібних проектах.

Тому розраховуючи кількість дисків і тип RAID-масиву важливо звертати увагу на навантаження по IOPS. Важливо зауважити, що вважається загальна кількість IOPS, які потім потрібно розділити на операції читання та операції запису, так, наприклад, на СУБД серверах поділ буде 80% на запис та 20% на читання, а на файлових серверахнавпаки 70% читання та 30% запису, але все залежить від сервісу, який розміщуватиметься. Також варто зауважити, що значення IOPS для кожного диска, наведені нижче в Таблиці 1, приблизні, оскільки різні операції дають різне навантаження, наприклад, послідовний запис блоками даних 4к дасть значно більший показник IOPS, ніж випадкове читання блоками 128К. Крім того, продуктивність дискової підсистеми вимірюється не лише кількістю IOPS, а й чергою диска, відгуком та іншими лічильниками, про які ми розповімо трохи нижче.

Диск Кількість IOPS
SATA 7200 100
SAS 10000 140
SAS 15000 210
SSD 8600

Таблиця 1. Зразкове значення IOPS у розрізі дисків

Також для IOPS для RAID-масивів використовувалися пенальті для кожного типу масиву. Наприклад, RAID 1 для запису даних відбувається дві операції на один диск і на другий диск, тому такий масив має пенальті 2. У RAID 5 для запису даних відбувається 4 операції: читання даних, читання парності RAID, запис даних, запис парності, тому пенальті становить 4. Для масивів 50, 60, 61 розраховувався кумулятивний ефект для складових RAID масивів. Значення пенальті Raid наведено у Таблиці 2.

Види RAID-масивів

Існує кілька поширених різновидів RAID Масивів (див. Таблицю 2).

Діаграма
(клікабельно)
Кількість дисків Кількість дисків, що вийшли з ладу Швидкість запису Швидкість читання Опис RAID пенальті
від 2 Ні Інформація розбивається на блоки даних фіксованої довжини та записується на обидва/кілька дисків по черзі. 1
від 2 1 Не змінюється, ніж один диск. Дані пишуться і один диск, і другий (зеркалируются). 2

від 3 1 Блоки даних та контрольні суми циклічно записуються на всі диски масиву. 4

від 4 2 Блоки даних та контрольні суми циклічно записуються на всі диски масиву, але контрольні суми дві. 6

від 4 від 1 до N/2 дисків у межах різних дзеркал. Дзеркальний масив, дані в якому записуються послідовно на кілька дисків, як у RAID 0. Ця архітектура є масивом типу RAID 0, сегментами якого замість окремих дисків є масиви RAID 1. 2

від 6 від 1 до 2 дисків, якщо вийде однакова кількість дисків у різних страйпах. Масив, дані у якому записуються послідовно кілька дисків, як у RAID 0. Однак сегментами його замість окремих дисків є масиви RAID 5. 4

Таблиця 2. Найбільш поширені типи RAID-масивів

RAID 60 і 61 є комбінуванням RAID-масивів 0 і 1 відповідно, сегментами якого замість окремих дисків є масиви RAID 6. Такі масиви успадковують всі переваги і недоліки їх RAID-масивів. Насправді найбільш поширеними RAID-масивами є RAID 1, RAID 5 і RAID 10.

Показники продуктивності дискової підсистеми

Перевірка продуктивності дискової підсистеми повинна проводитись на основі таких показників:

% Активності диска

Відображає відсоток загальної завантаженості диска. Уявляє собою суму значень лічильників - відсоток активності диска під час читання і відсоток активності диска під час запису. При використанні RAID масивів часто можна побачити значення цього лічильника більше 100%.

% Бездіяльність диска

Показує час простою диска, тобто. час, протягом якого диск залишався може спокою, не обробляючи операції читання \записи. На відміну від попереднього показника, лежить строго в діапазоні від 100% (повний спокій) до 0% (повне завантаження).

Звернень до диску

Цей показник таки показує кількість IOPS. Граничні значення таки вказані у розрахунках. Показник можна деталізувати на звернення до диска під час запису та читання.

Середній час звернення до диску

Середній час у секундах, потрібний для виконання диском однієї операції читання чи запису. Складається із значень часу на звернення під час читання та часу на звернення під час запису.

Середня довжина черги диска

Середня довжина черги диска відображає кількість операцій диска, поставлену в чергу за певний проміжок часу. Це значення розраховується на основі закону Літтла, згідно з яким кількість запитів, що очікують на обробку, в середньому дорівнює частоті надходження запитів, помноженої на час обробки запиту.

Поточна довжина черги диска

Показує кількість операцій з диском, які очікують на обробку на поточний момент часу.

Швидкість обміну з диском

Значення, яке показує середню кількість байт на читання/запис, надісланих на диск за секунду.

Середній розмір одного обміну з диском

Кількість байт, що передається за одну IOPS. Визначається як середньоарифметичне за період.

Розщеплень вводу/виводу на диск

Частота розбиття операцій запису/читання на кілька операцій. У разі великої фрагментації диска будуть запитуватись великі блоки і викликати збільшення показника.



Таким чином, для правильної архітектури дискової підсистеми важливо сформувати вимоги до стійкості до відмови масиву, які залежать від важливості розміщеної на дисках інформації, а також спрогнозувати приблизне навантаження в IOPS для формування надійної і продуктивної масштабованої системи.

Сервіси на базі платформи 1С при роботі з диском генерують значно більше операцій запису, ніж читання, тому для максимальної швидкодії дискова підсистема повинна мати найбільшу кількість IOPS і найменше значення пенальті для RAID-масиву.

  • RAID 1 формування дискової підсистеми для ОС.
  • RAID 10 для зберігання 1С баз та даних, вимоги до швидкості запису які високі.
  • RAID 5 зберігає файлові дані.

Системна інтеграція. Консалтинг