Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
RAID _ від принципів функціонування до реальних....doc
Скачиваний:
3
Добавлен:
22.07.2019
Размер:
141.31 Кб
Скачать

Лабораторна робота № 10. Принципи функціонування raid систем

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

RAID (англ. redundant array of independent/inexpensive disks - надлишковий масив незалежних/недорогих жорстких дисків) — масив з декількох дисків керованих контроллером, взаємозв'язаних швидкісними каналами і який сприймається як єдине ціле. Він забезпечує функції розміщення даних по масиву, а для решти всієї системи дозволяє представляти весь масив як один логічний пристрій вводу/виводу. За рахунок паралельного виконання операцій читання і запису на кількох дисках, масив забезпечує підвищену швидкість обмінів в порівнянні з одним великим диском. Залежно від типа використовуваного масиву може забезпечувати різні ступені відмовостійкості і швидкодії.

Каліфорнійський університет в Берклі представив наступні рівні специфікації RAID, які були прийняті як стандарт де-факто.

  • RAID 0 представлений як невідмовостійкий дисковий масив.

  • RAID 1 визначений як дзеркальний дисковий масив.

  • RAID 2 зарезервований для масивів, які застосовують код Хеммінга.

  • RAID 3, 4, 5 використовують парність для захисту даних від одиночних несправностей.

  • RAID 6 використовують парність для захисту даних від подвійних несправностей.

Загальні принципи функціонування

Основні завдання, які дозволяють вирішити RAID, це забезпечення відмовостійкої дискової системи і підвищення її продуктивності.

Відмовостійка досягається тим, що вводиться надмірність. У RAID об'єднується більше дисків, чим це необхідно для отримання необхідної ємкості.

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

Можливість одночасної роботи з декількома дисками можна реалізувати двома способами: з використанням паралельного доступу (parallel-access array) і з використанням незалежного доступу (independent-access array).

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

Зрозуміло, що в цьому випадку швидкість запису (так само як і швидкість читання) збільшується пропорційно кількості дисків, об'єднаних в RAID.

Для організації незалежного доступу робочий простір дисків також розмічається на зони певного розміру (блоки). Проте, на відміну від попереднього випадку, кожен запит на запис або читання обслуговується тільки одним диском (рис. 2).

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

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

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

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

Рівні RAID

RAID 0

Схема RAID 0

RAID 0 («Striping») — дисковий масив з двох або більш жорстких дисків з відсутністю надмірності. Інформація розбивається на блоки даних (Ai) і записується на обидва/декілька дисків одночасно.

(+): За рахунок цього істотно підвищується продуктивність (від кількості дисків залежить кратність збільшення продуктивності).

(+): RAID 0 може бути реалізований як програмно, так і апаратний.

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

RAID 1

Схема RAID 1

RAID 1 (Mirroring — «зеркалка»).

(+): Забезпечує прийнятну швидкість запису і виграш за швидкістю читання при розпаралелюванні запитів.

(+): Має високу надійність — працює до тих пір, поки функціонує хоч би один диск в масиві.

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

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

Дзеркало на багатьох дисках — RAID 1+0. При використанні такого рівня дзеркальні пари дисків шикуються в «ланцюжок», тому об'єм отриманого масиву може перевершувати ємкість одного жорсткого диска. Достоїнства і недоліки такі ж, як і для рівня RAID 0. Як і в інших випадках, рекомендується включати в масив диски гарячого резерву Hot Spare з розрахунку один резервний на п'ять працюючих.

RAID 2

У масивах такого типа диски діляться на дві групи — для даних і для кодів корекції помилок, причому якщо дані зберігаються на n дисках, то для складування кодів корекції необхідно n+1 дисків. Дані записуються на відповідні вінчестери так само, як і в RAID 0, вони розбиваються на невеликі блоки по числу дисків, призначених для зберігання інформації. Диски, що залишилися, зберігають коди корекції помилок, по яких в разі виходу якого-небудь вінчестера з ладу можливе відновлення інформації. Метод Хеммінга давно застосовується в пам'яті типу ECC і дозволяє на льоту виправляти однократні і виявляти двократні помилки.

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

RAID 3

Схема RAID 3

Структура масиву RAID 3 така: у масиві з n дисків дані розбиваються на блоки розміром 1 байт і розподіляються по n + 1 дискам, а ще один диск використовується для зберігання блоків парності. У RAID 2 для цієї мети стояло n + 1 дисків, але велика частка інформації на цих дисках використовувалася тільки для корекції помилок на льоту, а для простого відновлення в разі поломки диска досить меншої її кількості, вистачає і одного виділеного вінчестера.

Відповідно, відміності RAID 3 від RAID 2 очевидні: неможливість корекції помилок на льоту і менша надмірність.

(+): швидкість читання і запису даних висока, а для створення масиву потрібно зовсім трохи дисків, всього три.

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

(-): велике навантаження на контрольний диск, що приводить до того, що його надійність сильно падає в порівнянні з дисками з даними.

RAID 4

Схема RAID 4

RAID 4 схожий на RAID 3, але відрізняється від нього тим, що дані розбиваються на блоки, а не на байти. Таким чином, удалося «перемогти» проблему низької швидкості передачі даних невеликого об'єму. Запис же проводиться повільно через те, що парність для блоку генерується при записі і записується на єдиний диск. Використовуються масиви такого типа дуже рідко.

RAID 5

Схема RAID 5

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

Недоліки RAID 5 виявляються при виході з ладу одного з дисків — весь том переходить в критичний режим, всі операції запису і читання супроводяться додатковими маніпуляціями, різко падає продуктивність. При цьому рівень надійності значно знижується (оскільки зменшена надмірність масиву). Тому, з томом RAID 5 слід обов'язково використовувати диск Hot Spare. Якщо під час відновлення масиву, викликаного виходом з ладу одного диска, вийде з ладу другий диск — дані в масиві руйнуються. Мінімальна кількість використовуваних дисків рівна трьом.

RAID 6 (ADG)

Схема RAID 6

RAID 6 (Advanced Data Guarding) — схожий на RAID 5, але має вищий ступінь надійності — під контрольні суми виділяється ємкість 2-х дисків, розраховуються 2 суми по різних алгоритмах. Вимагає серйозніший процесор контроллера — відповідно, складна материнська плата. Забезпечує працездатність після «смерті» одночасно 2-х дисків. Для організації масиву потрібно мінімум 4 диски.

RAID 7

RAID 7 — зареєстрована марка компанії Storage Computer Corporation. Структура масиву така: на n + 1 дисках зберігаються дані, один диск використовується для складування блоків парності. Але додалося декілька важливих деталей, покликаних ліквідовувати головний недолік масивів такого типу: кеш даних і швидкий контроллер, завідувач обробкою запитів. Це дозволило знизити кількість звернень до дисків для обчислення контрольної суми даних. В результаті удалося значно підвищити швидкість обробки даних (подекуди в п'ять і більше разів).

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]