Защо RAID5 е „задължителен“? Вижте какво е "RAID" в други речници

Кратък преглед на RAID технологията

Този документ описва основните елементи на RAID технологията и предоставя преглед на различните нива на RAID.

  • RAID 2, 3

    RAID 4, 5

    таблица: предимства и недостатъци на основните нива на RAID

RAIDе акроним за Излишен масив от независими дискове.

Дисковият масив е колекция от дискови устройства, които работят заедно, за да увеличат скоростта и надеждността на I/O система. Този набор от устройства се управлява от специален RAID контролер ( контролер на масив), който капсулира функциите за подреждане на данни в масив; а за останалата част от системата позволява целият масив да бъде представен като едно логическо входно/изходно устройство. Поради паралелното изпълнение на операции за четене и запис на множество дискове, масивът осигурява повишена скорост на обмен в сравнение с един голям диск.

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

RAID нива

Всяко от четирите основни нива на RAID използва уникален метод за запис на данни на дискове и следователно всяко ниво предлага различни предимства. RAID нива 1,3 и 5 осигуряват огледално отразяване или съхранение на битове за паритет; и следователно ви позволяват да възстановите информация в случай на повреда на един от дисковете.

RAID ниво 0

Технологията RAID 0 е известна още като разделяне на данни ( разделяне на данни). С тази технология информацията се разбива на парчета (фиксирани количества данни, обикновено наричани блокове); и тези парчета се записват и четат от дискове паралелно. По отношение на производителността това означава две основни Ползи:

    Увеличава последователната I/O пропускателна способност чрез едновременно зареждане на множество интерфейси.

    намалена латентност на произволен достъп; няколко заявки към различни малки сегменти от информация могат да бъдат изпълнени едновременно.

недостатък: RAID 0 е само от съображения за производителност и не осигурява излишък на данни. Следователно всички повреди на диска ще изискват възстановяване на информация от архивен носител.

Контролер на масив

Диск 1

Диск 2

Диск 3

Диск 4

Диск 5

Сегмент 1

Сегмент 2

Сегмент 3

Сегмент 4

Сегмент 5

Сегмент 6

Сегмент 7

Сегмент 8

Сегмент 9

Сегмент 10

ориз. 1. Схема на работа на масива и разпределение на данни между дискове за RAID 0. Забележка: сегмент- това са 2 дискови блока от 512 байта.

RAID ниво 1

RAID 1 технологията е известна още като огледално копиране ( дублиране на диска). В този случай копия на всяка част от информацията се съхраняват на отделен диск; или обикновено всеки (използван) диск има "двойник", който съхранява точно копиетози диск. Ако едно от основните устройства се повреди, това се заменя от неговия "близнак". Производителността на произволно четене може да бъде подобрена чрез използване на "двойника" с главата по-близо до необходимия блок за четене на информация.

Времето за запис може да бъде малко повечеотколкото за един диск, в зависимост от стратегията за запис: записването на два диска може да се извърши или успоредно (за скорост) или строго последователно (за надеждност).

RAID 1 е много подходящ за приложения, които изискват висока надеждност, ниска латентност при четене и където не се изисква минимизиране на разходите. RAID 1 осигурява излишно съхранение на информация, но във всеки случай трябва да поддържате резервно копие на данните, т.к. това е единственият начин за възстановяване на случайно изтрити файлове или директории.

Диск 1 (данни)

Диск 2 (копие на диск 1)

Диск 3 (данни)

Диск 4 (копие на диск 3)

Диск 5 (безплатно)

Сегмент 1

Сегмент 1

Сегмент 2

Сегмент 2

Сегмент 3

Сегмент 3

Сегмент 4

Сегмент 4

ориз. 2. Разпределение на данни между дискове за RAID 1.

RAID нива 2 и 3

RAID нива 2 и 3 осигуряват паралелна ("унисонна") работа на всички устройства. Тази архитектура изисква съхранение на битове за паритет за всяка част от информацията, разпределена по дисковете. Единствената разлика между RAID 3 и RAID 2 е, че RAID 2 използва множество дискове за съхранение на битове за паритет, докато RAID 3 използва само един. RAID 2 се използва рядко.

Ако едно устройство с данни се повреди, системата може да възстанови съдържанието му от съдържанието на останалите устройства с данни и устройството за четност.

Производителността в този случай е много висока за големи количества информация, но може да бъде доста скромна за малки обеми, тъй като припокриването на четене на няколко малки сегмента информация е невъзможно.

Диск 1 (данни)

Диск 2 (данни)

Диск 3 (данни)

Диск 4 (данни)

Диск 5 (информация за паритет)

Байт за четност

Байт за четност

ориз. 3. Разпределение на данни между дискове за RAID 3.

RAID нива 4 и 5

RAID 4 коригира някои от недостатъците на RAID 3, като използва големи парчета информация, разпръснати във всички устройства, с изключение на устройството за четност. В този случай за малки количества информация се използва само дискът, на който се намира необходимата информация. Това означава, че множество заявки за четене могат да се изпълняват едновременно. Въпреки това, заявките за запис генерират ключалки при запис на информация за паритет. RAID 4 се използва рядко.

RAID 5 е много подобен на RAID 4, но премахва свързаното блокиране. Разликата е, че информацията за четност се разпределя между всички дискове в масива. В този случай са възможни едновременно операции за четене и запис.

Тази технология е много подходяща за приложения, които работят с малки количества данни, като системи за обработка на транзакции.

Диск 1

Диск 2

Диск 3

Диск 4

Диск 5

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

Сегмент 1

Сегмент 2

Сегмент 3

Сегмент 4

Сегмент 5

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

Сегмент 6

Сегмент 7

Сегмент 8

Сегмент 9

Сегмент 10

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

Сегмент 11

Сегмент 12

ориз. 4. Разпределение на данни между дискове за RAID 5.

Предимства и недостатъци на основните нива на RAID

RAID ниво

Механизъм за надеждност

Ефективен капацитет на масива

производителност

Област на приложение

приложения без значителни изисквания за надеждност

огледален

висока или средна

приложения без значителни изисквания за разходите

паритет

приложения, работещи с големи количества данни (графика, CAD/CAM и др.)

паритет

приложения, които работят с малки количества данни (обработка на транзакции)

RAID 5 технологията ви позволява да комбинирате поне 3 твърди диска в един масив. Основната характеристика е, че контролните суми са равномерно разпределени в пространството, с което можете да върнете загубени данни. Техниката обаче има свои нюанси, така че действителният въпрос е как да възстановим RAID 5. Ще говорим за причините за неуспеха, основните нива на RAID, а също така ще представим подробна процедура за възстановяване.

Възможни причини за повреда

Резервирането на RAID масив увеличава шансовете за възстановяване на данни, но твърдите дискове, както всяка друга техника, разбира се, са предразположени към често срещани проблеми:

  • неволно изтриване;
  • повреда на файлове/папки,
  • повреда на файловите системи,
  • действието на злонамерен софтуер.

Масивите също са податливи на външни влияния: изпуснат твърдия диск, изгори сървъра или влезе вода вътре. Често самият RAID контролер се поврежда. Евтините модели имат ниска цена, не само поради опростените алгоритми. Винаги има шанс да намерите дефектен продукт.

Скачките в захранването или прекъсванията на захранването могат да доведат до „изхвърляне“ на диска от масива и излизане офлайн, но да остане напълно функционален и функционален. Проблемът може да се крие в софтуера или контролера, който просто не може да види този твърд диск.

Основни нива на RAID и как те се възстановяват

Потребителят може да възстанови данните по няколко начина, което определя нивото на масива. Препоръчваме ви да се запознаете със съществуващите нива, които се използват в съвременните системи:

  • RAID0. Масивът осигурява най-висока производителност поради липсата на излишък. Но сигурността на данните е минимална, така че ако един диск се повреди, ще бъде почти невъзможно да се възстанови системата без ремонт.
  • RAID1. Системата не е много бърза, но може да се похвали с висока сигурност на данните. Използва се принципът на "огледало", когато всички данни се дублират, докато има едно копие на друг диск. Ако информацията се загуби, тя просто се копира от първия диск, без да спира целия масив.
  • RAID5. Използва се разпределението на информационните блокове в пространството и принципът на паритета. Ако само един се повреди, разбира се, HDD масивът продължава да работи, но при по-ниски скорости.
  • RAID 10. Комбинация от първите две нива, минималният брой дискове е 4. Използва се принципът на огледално отразяване на данните.

Инструкции стъпка по стъпка за възстановяване на данни

Можете сами да възстановите изтритите данни, но само в онези ситуации, когато всички дискове са в добро работно състояние, масивът просто се „свива“ и няма критични данни на твърдия диск. Ако информацията е изключително ценна, не експериментирайте сами. Препоръчваме да използвате помощта на специалисти. В случай на повреда на хардуера, ще трябва да подчините твърдия диск. Едва след това направете "сглобяването" на масива. Това е специфична операция, която е проблематично да се извърши самостоятелно.

Възстановяване на софтуер

Процедурата изисква предварителна инсталация на RAID Reconstructor или подобен. Ще ви трябва също персонален компютър и кабели, с които да свързвате устройства към него. Ако не можете да свържете устройства от масива към вашия компютър, тогава дори не трябва да стартирате. Инструкцията включва стъпки:

  1. Здравето на твърдия диск от масива означава, че можете да ги свържете към компютъра като отделен носител. Използвайте всеки удобен метод (SATA, SAS, IDE и др.).
  2. След като дисковете са свързани, не ги инициализирайте, не осъществявайте достъп до данни и не се опитвайте да ги форматирате. Идеалният вариант е да работите с копия по сектори, тъй като промените няма да повлияят на оригиналните данни.
  3. Стартирайте програмата RAID Reconstructor. В полето Тип задайте RAID5 и задайте броя на дисковете. В нашия пример ще има три от тях.
  4. Във вертикалния списък, разделени с три точки, е необходимо да посочите нашите дискове, тоест техните изображения. Щракнете върху Избор на файл. В Explorer изберете необходимите изображения.
  5. Щракнете върху бутона Open Drives и след това Анализ.
  6. В следващите прозорци щракнете върху Напред. Процедурата ще сканира само за определяне на размера на блока и други параметри. След това ще се покаже прозорец с избор на параметри.
  7. Задайте размера на блока и началния сектор (ако са еднозначно известни). В противен случай можете да поставите отметка в квадратчетата навсякъде. Видът на паритета все още не е известен, така че ще са необходими тестове. Увеличете броя на секторите за извадката с 10 пъти (до 100 хиляди) и след това щракнете върху Напред.
  8. Ако всичко е успешно, тогава ще получите недвусмислен (или двусмислен) резултат и препоръка.
  9. Сега изградете отново целия масив. В главния прозорец посочете пътя, където ще бъде копиран готовият масив, и след това щракнете върху Копиране.

Този метод ви позволява бързо и удобно да възстановите данни от RAID 5. Ако е необходимо, можете да опитате възстановяване с помощта на Intel Rapid Storage Technology или R-Studio.

Хардуер

Това е изключително сложен метод и се основава повече на късмета. Можете да опитате да измамите хардуера и да получите достъп до данните. Като цяло трябва да следвате тези стъпки:

  1. номерирайте дисковете в масива;
  2. копиране сектор по сектор всеки от тях;
  3. свържете ги към контролера в правилния ред.

Трудността е не само в определянето на реда, но и в непредсказуемостта на поведението на RAID контролерите. Те може да не приемат този подход или да започнат самостоятелно процес. Уверете се, че контролерът не се инициализира. Ако това не може да бъде избегнато, постигнете ускорена инициализация. Използвайки тази техника, можете да накарате клонингите да работят като оригиналния масив или да го пресъздадете, но със същите настройки. Не забравяйте, че всяко несъответствие ще анулира вашите шансове, така че шансовете за успех без знания и опит в тази област са изключително малки.

При наличие на важни данни се свържете само със специализиран сервизен център. Много "пропуски и измествания" в данните затрудняват нещата. Само опитни професионалисти са в състояние да видят "шаблоните" и постепенно да възстановят ценна информация. Понякога техниците за възстановяване на RAID5 трябва да програмират свои собствени алгоритми.

Когато имате сривани дискове в RAID масив, има списък с действия, които не се препоръчват. Първата и най-важна стъпка е да не инициализирате, докато не разберете остатъчния източник и вида на проблема. Има ситуации, когато един диск в масива не работи няколко години (валидно за RAID5), но това остава незабелязано. След това, след повреда или скок на захранването, масивът се разпада, но дисковете остават видими. Системният администратор събира всичко на място, по време на което задължително се извършва инициализация. Непознаването на информацията за дефектния HDD обаче ще доведе до катастрофални резултати. Резултатът е повредени данни или мъртъв дял. "Изпуснатият" диск прави промени в контролните суми, съответно разваля цялата информация.


  • изпрати

    Ако се интересувате от тази статия, тогава очевидно сте срещнали или очаквате скоро да срещнете един от следните проблеми на вашия компютър:

    - очевидно няма достатъчно физически обем на твърдия диск като един логически диск. Най-често този проблем възниква при работа с големи файлове (видео, графики, бази данни);
    - явно липсва производителността на твърдия диск. Най-често този проблем възниква при работа с нелинейни системи за редактиране на видео или когато голям брой потребители имат достъп до файлове на твърдия диск по едно и също време;
    - надеждността на твърдия диск очевидно не е достатъчна. Най-често този проблем възниква, когато трябва да работите с данни, които никога не могат да бъдат загубени или които винаги трябва да са достъпни за потребителя. Тъжният опит показва, че дори най-надеждното оборудване понякога се поврежда и като правило в най-неподходящия момент.
    Създаването на RAID система на вашия компютър може да реши тези и някои други проблеми.

    Какво е "RAID"?

    През 1987 г. Патерсън, Гибсън и Кац от Калифорнийския университет в Бъркли публикуват Случай за излишни масиви от евтини дискове (RAID). Тази статия описва различните типове дискови масиви, наричани RAID - излишен масив от независими (или евтини) дискове. RAID се основава на следната идея: чрез комбиниране на няколко малки и/или евтини устройства в масив, можете да получите система, която превъзхожда най-скъпите устройства по отношение на обем, скорост и надеждност. На всичкото отгоре такава система от гледна точка на компютъра изглежда като едно-единствено флопи устройство.
    Известно е, че средното време между отказите на дисков масив е средното време между отказите на едно устройство, разделено на броя на устройствата в масива. В резултат на това MTBF на масива е твърде кратък за много приложения. Въпреки това, дисковият масив може да бъде направен устойчив на повреда на един диск по няколко начина.

    В горната статия бяха дефинирани пет типа (нива) дискови масиви: RAID-1, RAID-2, ..., RAID-5. Всеки тип осигурява устойчивост на грешки, както и различни предимства пред едно задвижване. Наред с тези пет типа, популярност набира и дисковият масив RAID-0, който няма излишък.

    Какви са нивата на RAID и кое да избера?

    RAID-0... Обикновено се дефинира като НЕ излишна група устройства без четност. RAID-0 понякога се нарича "Striping" по отношение на начина, по който информацията се поставя сред дисковете, включени в масива:

    Тъй като RAID-0 не е излишен, отказът на едно устройство ще доведе до повреда на целия масив. От друга страна, RAID-0 осигурява максимален обменен курс и ефективност на дисковото пространство. Тъй като RAID-0 не изисква сложни математически или логически изчисления, разходите за внедряване са минимални.

    Приложения: Аудио и видео приложения, изискващи високи непрекъснати скорости на трансфер на данни, които едно устройство не може да осигури. Например, изследване, проведено от Mylex за определяне на оптималната конфигурация на дисковата система за станция за нелинейно видео редактиране, показва, че в сравнение с едно устройство, RAID-0 масив от две устройства дава 96% увеличение на скоростта на запис/четене от три диска - със 143% (според теста Miro VIDEO EXPERT Benchmark).
    Минималният брой устройства в масива "RAID-0" е 2 бр.

    RAID-1... По-известно като "огледално", това е двойка устройства, съдържащи същата информация и съставляващи едно логическо устройство:

    Записването се извършва и на двете устройства във всяка двойка. Въпреки това, сдвоените устройства могат да извършват едновременни операции за четене. По този начин "огледалното" може да удвои скоростта на четене, но скоростта на запис остава непроменена. RAID-1 е 100% излишен и една повреда на един диск не води до отказ на целия масив - контролерът просто превключва операциите за четене/запис към оставащото устройство.
    RAID-1 осигурява най-бързата производителност от всички видове излишни масиви (RAID-1 до RAID-5), особено в многопотребителска среда, но има най-лошото използване на дисковото пространство. Тъй като RAID-1 не изисква сложни математически или логически изчисления, разходите за внедряване са минимални.
    Минималният брой устройства в масива "RAID-1" е 2 бр.
    Множество RAID-1 масиви могат от своя страна да бъдат комбинирани в RAID-0, за да се увеличи скоростта на запис и да се гарантира надеждност на съхранението на данни. Тази конфигурация се нарича "двустепенен" RAID или RAID-10 (RAID 0 + 1):


    Минималният брой устройства в масив "RAID 0 + 1" е 4 броя.
    Обхват: евтини масиви, в които основното е надеждността на съхранение на данни.

    RAID-2... Разпределя данни между ивици със секторен размер в група устройства. Някои устройства са предназначени за съхранение на ECC (Код за корекция на грешки). Тъй като повечето устройства съхраняват ECC кодове за всеки сектор по подразбиране, RAID-2 не предлага голямо предимство пред RAID-3 и следователно практически не се използва.

    RAID-3... Както в случая с RAID-2, данните се разпределят в ивици от един сектор и едно от устройствата в масива е запазено за съхранение на информация за паритет:

    RAID-3 разчита на ECC кодове, съхранявани във всеки сектор, за да открие грешки. В случай на повреда на едно от устройствата, възстановяването на информацията, съхранявана на него, е възможно чрез изчисляване на изключително ИЛИ (XOR) въз основа на информацията за останалите устройства. Всяко запис обикновено се разпределя между всички устройства и следователно този тип масив е добър за работа в приложения с голям трафик с дисковата подсистема. Тъй като всяка I/O операция се отнася за всички устройства в масива, RAID-3 не може да изпълнява няколко операции едновременно. Следователно RAID-3 е добър за среда с един потребител, с една задача и дълги записи. За работа с кратки записи е необходима синхронизация на въртенето на устройствата, тъй като в противен случай намаляването на обменния курс е неизбежно. Използва се рядко, т.к губи от RAID-5 по отношение на използването на дисково пространство. Изпълнението е скъпо.
    Минималният брой устройства в масив "RAID-3" е 3 бр.

    RAID-4... RAID-4 е идентичен с RAID-3, с изключение на това, че размерът на лентата е много по-голям от един сектор. В този случай четенето се извършва от едно устройство (без да се брои устройството, което съхранява информацията за четност), така че е възможно да се извършват множество операции за четене едновременно. Въпреки това, тъй като всяко записване трябва да актуализира съдържанието на устройството за четност, множество записи не могат да се извършват едновременно. Този тип масиви нямат забележими предимства пред RAID-5 масив.
    RAID-5. Този тип масив понякога се нарича "завъртен масив на четност". Този тип масив успешно преодолява присъщия недостатък на RAID-4 – невъзможността едновременно да се извършват множество записи. Този масив, подобно на RAID-4, използва ивициголям размер, но за разлика от RAID-4, информацията за паритет се съхранява не на едно устройство, а на всички дискове на свой ред:

    Операциите за запис се отнасят до едно устройство с данни и друго устройство с информация за четност. Тъй като информацията за четност за различни ленти се съхранява на различни устройства, множество едновременни записи не са възможни само в онези редки случаи, когато ленти за данни или ленти за четност са на едно и също устройство. Колкото повече устройства са в масива, толкова по-рядко съвпадат местоположението на ивиците за информация и паритет.
    Област на приложение: надеждни масиви с голям обем. Изпълнението е скъпо.
    Минималният брой устройства в масив "RAID-5" е 3 бр.

    RAID-1 или RAID-5?
    В сравнение с RAID-1, RAID-5 използва дисковото пространство по-икономично, тъй като съхранява не "копие" на информация, а контролна сума за излишък. В резултат на това произволен брой устройства могат да бъдат комбинирани в RAID-5, от които само един ще съдържа излишна информация.
    Но по-висока ефективност на използване на дисковото пространство се постига за сметка на по-ниската скорост на обмен на информация. Когато пишете информация в RAID-5, трябва да актуализирате информацията за паритет всеки път. За да направите това, трябва да определите кои битове за паритет са се променили. Първо се чете старата информация, която трябва да се актуализира. След това тази информация се XOR с новата информация. Резултатът от тази операция е битова маска, в която всеки бит = 1 означава, че стойността в информацията за четност в съответната позиция трябва да бъде заменена. След това актуализираната информация за паритета се записва на подходящото място. Следователно, за всяка програмна заявка за запис на информация, RAID-5 извършва две четения, две записи и две XOR.
    Трябва да платите за това, че дисковото пространство се използва по-ефективно (вместо копие на данните се съхранява блок за четност): отнема допълнително време за генериране и запис на информация за четност. Това означава, че скоростта на запис на RAID-5 е по-ниска от тази на RAID-1 в съотношение 3:5 или дори 1:3 (т.е. скоростта на запис на RAID-5 е 3/5 до 1/3 от скорост на запис RAID-1). Поради това няма смисъл да създавате RAID-5 в софтуер. Те също не могат да се препоръчват за приложения, където скоростта на запис е от решаващо значение.

    Трябва ли да изберете метод за внедряване на RAID - софтуер или хардуер?

    След като прочетете описанието на различните нива на RAID, ще забележите, че никъде не са споменати специфични хардуерни изисквания, които са необходими за прилагане на RAID. От което можем да заключим, че всичко, което е необходимо за внедряване на RAID, е да свържете необходимия брой устройства към наличния в компютъра контролер и да инсталирате специален софтуер на компютъра. Това е вярно, но не съвсем!
    Всъщност има възможност за софтуерно внедряване на RAID. Пример е Microsoft Windows NT 4.0 Server OS, в която е възможна софтуерна реализация на RAID-0, -1 и дори RAID-5 (Microsoft Windows NT 4.0 Workstation предоставя само RAID-0 и RAID-1). Това решение обаче трябва да се счита за изключително опростено, което не позволява да се реализират напълно възможностите на RAID масива. Достатъчно е да се отбележи, че със софтуерна реализация на RAID цялата тежест за поставяне на информация върху дискове, изчисляване на контролни кодове и т.н. пада върху централния процесор, което естествено не повишава производителността и надеждността на системата. По същите причини тук практически няма сервизни функции и всички операции за подмяна на дефектно устройство, добавяне на ново устройство, промяна на нивото на RAID и т.н. се извършват с пълна загуба на данни и с пълна забрана на всякакви други операции . Единственото предимство на внедряването на софтуерен RAID е минималната цена.
    - специализиран контролер освобождава централния процесор от основни операции с RAID, като ефективността на контролера е толкова по-забележима, колкото по-високо е нивото на сложност на RAID;
    - контролерите, като правило, са оборудвани с драйвери, които ви позволяват да създадете RAID за почти всяка популярна ОС;
    - вграденият BIOS на контролера и програмите за управление, прикрепени към него, позволяват на системния администратор лесно да свързва, изключва или сменя дискове, включени в RAID, да създава няколко RAID масива, дори на различни нива, да следи състоянието на дисковия масив , и т.н. За "напреднали" контролери тези операции могат да се извършват "в движение"; без да изключвате системния блок. Много операции могат да се извършват на "заден план", т.е. без прекъсване на текущата работа и дори дистанционно, т.е. от всяко (разбира се, ако имате достъп) работно място;
    - контролерите могат да бъдат оборудвани с буферна памет ("кеш"), която съхранява последните няколко блока данни, които при чест достъп до същите файлове могат значително да увеличат скоростта на дисковата система.
    Недостатъкът на хардуерния RAID е относително високата цена на RAID контролерите. Въпреки това, от една страна, трябва да плащате за всичко (надеждност, производителност, обслужване). От друга страна, наскоро, с развитието на микропроцесорната технология, цената на RAID контролерите (особено по-младите модели) започна да пада рязко и стана сравнима с цената на обикновените дискови контролери, което позволява инсталиране на RAID системи не само в скъпи мейнфрейми, но също и в сървъри.начално ниво и дори работни станции.

    Как да изберем модел на RAID контролер?

    Има няколко вида RAID контролери, в зависимост от тяхната функционалност, дизайн и цена:
    1. Диск контролери с RAID функции.
    Всъщност това е обикновен дисков контролер, който благодарение на специален фърмуер на BIOS ви позволява да комбинирате устройства в RAID масив, като правило, от ниво 0, 1 или 0 + 1.

    Ultra (Ultra Wide) SCSI контролер от Mylex KT930RF (KT950RF).
    Външно този контролер не се различава от обикновения SCSI контролер. Цялата "специализация" е в BIOS, който сякаш е разделен на две части - "SCSI конфигурация" / "RAID конфигурация". Въпреки ниската цена (по-малко от $ 200), този контролер има добър набор от функции:

    - Комбиниране на до 8 диска в RAID 0, 1 или 0 + 1;
    - поддържа Горещ резервда замени "в движение" неуспешно устройство;
    - възможност за автоматична (без намеса на оператора) подмяна на дефектно задвижване;
    - автоматичен контрол на целостта и идентичността (за RAID-1) данни;
    - наличието на парола за достъп до BIOS;
    - програмата RAIDPlus, която предоставя информация за състоянието на устройствата в RAID;
    - драйвери за DOS, Windows 95, NT 3.5x, 4.0

    Хардуерни подсистеми RAID 5са безспорно най-популярните за файлови сървъри с общо предназначение, уеб сървъри и други приложения за съхранение и обработка на данни. Те не само повишават производителността и подобряват защитата на данните, но могат да намалят цената на такова решение, като същевременно поддържат или подобряват основните характеристики и свойства.

    Ефективното съхранение на данни е критичен проблем в корпоративната изчислителна среда и много организации използват RAID масиви в сървърни, мрежови и интернет приложения за съхранение и обработка, за да подобрят наличността. RAID технологиите могат да позволят на ИТ мениджърите да се възползват от ключовите характеристики на производителност и работа, които RAID 5 контролерите и подсистемите предоставят чрез I/O процесори, които освобождават CPU от прекъсвания по време на операции четене-промяна-запис на диск.

    По отношение на реализацията RAID контролерите могат да бъдат софтуерни (т.нар. софтуер), софтуер и хардуер и изцяло хардуерни.

    Софтуерен RAIDне изисква специален хардуер. Всички данни се обработват от централния процесор. В този случай се използва стандартната връзка за задвижване. Неудобството от такава реализация на RAID е допълнително значително натоварване на процесора, намаляване на процесорното време за обработка на заявки от приложения и операционна система, тъй като централният процесор обработва всички RAID операции (изчисление на XOR, разпределение на данни и обработка на прекъсвания за тези задачи).

    Хардуерно-софтуерен RAIDсе реализира с помощта на I / O чип на специална микросхема (ASIC), която може да извършва XOR операции. В този случай част от операциите за осигуряване на функционирането на RAID масива се поема от тази микросхема. Всичко останало все още е централният процесор, който извършва операции с помощта на драйвери. Хардуерен / софтуерен RAID по същество е по-ефективно решение, базирано на централния процесор на системата.

    Хардуерен RAID контролере RAID подсистема, която всъщност е независима и самодостатъчна за своите задачи и практически не изисква ресурси на процесора, когато работи с RAID масив. Тази подсистема има свой собствен BIOS, подканата на който може да се види по време на стартиране на системата, собствен процесор и собствена памет, наречена кеш на контролера.

    Определяне на RAID нива

    Има няколко основни типа (т.нар. "нива") RAID. Всеки предлага уникална комбинация от свойства, две от които са защита на данните и производителност. За да разберете как работи RAID 5, разгледайте двете първоначални нива на RAID, "0" и "1":

    RAID 0(лента): Това ниво на RAID осигурява едновременно четене/запис на блокове данни наведнъж на всички устройства в масива паралелно. Тази паралелна обработка на данни позволява информацията да се чете и записва в RAID 0 масив много по-бързо, отколкото в едно устройство. RAID 0 обикновено се използва за задачи, при които скоростта на обработка на данни е много по-важна от целостта на данните, защото ако един от дисковете се повреди, всички данни в масива се губят.

    RAID 1(огледално): Това ниво на RAID дублира данни на едно или повече устройства. RAID 1, за разлика от RAID 0, се използва за приложения, където защитата на данните е по-важна от производителността. В случай на повреда на едно от устройствата, информацията ще бъде напълно запазена на втория. RAID-1 осигурява по-бързо четене от един диск, но записите към него са по-бавни. Тъй като защитата на операционната система е важна, RAID 1 често се използва за отразяване на зареждащото устройство на сървър (когато операционната система и данните са разпръснати между различни устройства или масиви).

    Как работи RAID 5

    RAID 5съчетава свойства RAID 0и RAID 1... От една страна, операциите за четене и запис се извършват едновременно (паралелно) с всички дискове в масива. От друга страна, ако един диск се повреди, информацията не се губи.

    RAID 5 поддържа целостта на данните на дисков масив, използвайки пространство, равно на размера на по-малкото устройство в масива. Например, в масив от пет 72 GB диска, наличният капацитет на масива ще бъде 288 GB. Достъпният от потребителя капацитет на RAID 5 масив се изчислява по формулата С * (н – 1), където С- капацитетът на най-малкото устройство в масива, н- общият брой устройства в масива.

    Броят на устройствата, техният капацитет и общият капацитет на RAID 5 масива не оказват влияние върху безопасността на данните. Точно както едно 72GB устройство може да защити всички данни в масив от пет диска с общо 288GB, в масив с 15 300GB диска, едно устройство от 300GB може да защити цял масив от 4,2TB в случай на повреда.

    RAID 5 осигурява ефективен начин за защита на данните и постига производителност на четене, подобна на RAID 0. В същото време скоростта на запис на RAID 5 може да достигне по-високи стойности от тази на едно устройство. По този начин, тъй като RAID 5 ефективно защитава данните и може да подобри производителността на дисковата подсистема, той е най-популярният днес.

    Изчисляване на функцията XOR

    Едно устройство може да защити данни от произволен брой други устройства, стига само едно устройство в масива да не успее. XOR е едновременно асоциативен и комутативен, което означава, че нито редът, нито групирането на операндите влияят на резултатите. XOR също е двоична операция и има само четири възможни комбинации от два операнда. Два операнда имат "истински" XOR резултат, когато един и само един операнд се оценява на 1.

    Изчисляване на XORсе реализират с помощта на специален хардуер, който може да бъде XOR ASIC чип или I/O процесор с интегрирана XOR функционалност, което значително повишава производителността на RAID контролера. Всеки байт данни, съхранявани в RAID 5 том, изисква изчисления на XOR. Разбирането как работи XOR е от решаващо значение за разбирането как една подсистема RAID 5 може да защити големи количества данни с относително малко количество от едно устройство.

    На фигура 1 всеки правоъгълник Dn представлява блок от данни, наречен лента. Всички ленти в един ред се наричат ​​ивици. В RAID 5 данните за паритет се намират в различни ленти на всяко устройство - това е така нареченото въртене на паритета. Това е за повишаване на производителността: тъй като паритетът се изчислява и записва във всяка операция четене-промяна-запис, поставянето му на едно устройство би създадело пречка. Достъп до такова устройство ще бъде толкова пъти по-често в сравнение с други устройства в системата, колкото има такива устройства в системата. Данните за четност са Pn, където n е номерът на лентата, просто резултат от операцията XOR върху всички други елементи от данни в същата лента. Тъй като XOR е асоциативна и комутативна операция, нейният резултат върху множество операнди може да бъде намерен чрез извършване на XOR първо върху всеки два операнда, след това XOR се извежда резултатът от тази операция и следващия операнд и така нататък с всички операнди, докато се постигне резултат.

    Фигура 1. Карта с данни на типичен RAID 5 с четири устройства

    RAID 5 том позволява на всяко едно устройство в масива да се повреди без загуба на данни. Обикновено, когато физическо устройство се повреди, като устройство 3 на фигура 2, се казва, че масивът е в критично състояние (влошено на английски). В такава ситуация липсващите данни за която и да е лента могат да бъдат определени чрез извършване на операция XOR върху всички останали елементи от данни на тази лента. Грубо казано, всяка загубена част от данни се представя като общата сума на останалите ленти в лентата. Типичният размер на лентата е от 32 KB до 128 KB. Фигура 2 показва масив с условен размер на лентата, където всеки елемент представлява един бит.

    Паритет на първа лента:
    P1 = D1 XOR D2 XOR D3;
    P1 междинен = D1 XOR D2 = 1;
    P1 = P1 меж. XOR D3 = 0.
    Така че P1 = 0.

    Фигура 2. RAID 5 карта за данни с четири устройства; масив с условен размер на лентата.

    Ако хост поиска данни от контролер от масив, който е в критично състояние, RAID контролерът трябва първо да прочете всички налични данни в лентата, включително паритет. След това върху тези елементи се извършва XOR. Тази операция води до загуба на данни. По този начин достъпът до масива не се прекъсва в случай на повреда на едно от устройствата. Ако обаче второто устройство се повреди в този момент, данните от целия масив се губят безвъзвратно.

    Повечето хардуерни RAID контролери възстановяват автоматично масива, ако е налично устройство с горещ резерв, което връща масива към нормалното. В допълнение, хардуерните RAID контролери обикновено се доставят със софтуер, който включва средства за уведомяване на системните администратори при възникване на повреда. Това позволява на администраторите да решат проблема, преди следващото устройство да се повреди и масивът да премине в критично състояние без възможност за автоматично възстановяване.

    Извършване на операция четене-промяна-запис

    Операцията по запис в RAID 5 е отговорна за изчисляването и записването на паритетни данни. Тази операция обикновено се нарича операция четене-промяна-запис. Представете си лента с четири блока данни и един блок с паритет. Да предположим, че хостът иска да промени малък блок от данни, който заема място само на една лента в лентата. RAID контролерът не може просто да запише този малък блок данни и да приеме, че заявката е завършена. Тази операция трябва също да актуализира данните за четност, които се изчисляват чрез извършване на операция XOR върху всяка лента в лентата. По този начин паритетът се изчислява всеки път, когато една или повече ленти се сменят.

    Фигура 3 показва типична операция четене-промяна-запис, при която данните, които хостът записва в устройството, се съдържат само в една лента, в блок D5. Операцията четене-промяна-запис се състои от следните стъпки:

    Фигура 3. Стъпка по стъпка: Операция четене-промяна-запис в RAID 5 масив с четири диска

    1. Получаване на нови данни от хоста: операционната система иска да запише данни в блок D5 на устройство 2.
    2. Четене на стари данни на устройство 2, на мястото на които се предполага, че се записват нови данни. Четенето само на блока данни, който се променя по време на процеса на запис, елиминира необходимостта от четене на данни от всички други устройства в лентата, за да се изчисли четността. Броят на стъпките, необходими за операция четене-промяна-запис, не зависи от броя на устройствата в масива.
    3. Четене на стария паритет. Тази операция не зависи от броя на устройствата в масива.
    4. Изчисляване на новия паритет на лентата. За да направите това, трябва да изчислите XOR на стъпки 2 и 3 минус (в този случай, в булева аритметика, това е същото XOR) приноса на старите данни, които ще бъдат презаписани. Това се дължи на асоциативността и комутативността на XOR. По този начин, за да определите четността за лента с нов блок D5, трябва само да изчислите XOR на новите данни, старите данни и стария паритет.
    5. Проверка на целостта на данните: Този процес не е описан на фигура 3, тъй като прилагането му варира значително от доставчик до доставчик. Смисълът на този процес е да се проследи напредъка на следващите стъпки 6 и 7. За непрекъснат дисков масив, подсистемата трябва да гарантира, че блокът за четност винаги съвпада с данни в рамките на честотната лента. Тъй като е невъзможно да се гарантира, че нови данни и нов блок за паритет ще бъдат записани едновременно на различни дискове, подсистемата RAID дефинира обработваната лента като непълна (непълна), "мръсна", което означава, че целостта на данните е компрометиран.
    6. Записване на данни, получени от хоста в стъпка 1. Сега, според таблицата за разпределение на данни, RAID подсистемата определя на кое физическо устройство и къде точно на устройството ще бъдат записани тези данни.
    7. Записване на нов блок за четност: нов блок за четност е изчислен в стъпка 4; сега RAID подсистемата го записва на устройството.
    8. Проверка на целостта на данните: Веднага след като RAID подсистемата потвърди, че стъпки 6 и 7 са завършени успешно, т.е. и данните и паритета се записват в устройствата, лентата се счита за последователна.

    В примера на фигура 3 да предположим, че Dnew = 0, Dold = 1 и Pold = 0. Обработката на стъпка 4 на тези данни ще ни даде: 0 XOR 1 XOR 0 = 1. Това е паритетът P. След прочитане-модификация - напишете ", вторият ред на фигура 3 ще бъде D4 = 1, D5 = 0, P2 = 1 и D6 = 0.

    Този оптимизиран метод е напълно мащабируем. Броят на четене, запис и XOR са независими от броя на устройствата в масива. Тъй като устройството с данни за четност участва във всяка операция на запис (стъпки 6 и 7), данните за четност се съхраняват във всички устройства в масива, като се движат в лентата спрямо блоковете данни. Ако всички данни за паритет се съхраняват на едно физическо устройство, тогава това устройство може да се превърне в тесно място, както бе споменато по-горе.

    Разтоварването прекъсва от централния процесор

    Прекъсването е заявка от системен компонент за време на процесора. I/O подсистемите прекъсват процесора, когато завършат транзакция. По-долу е дадено малко сравнение на това какви прекъсвания се генерират от различни RAID контролери за прости записи в RAID 5 масив:

    Софтуерен RAID:тъй като в този случай централният процесор на системата е отговорен за поставянето на данни на диск, той трябва да генерира заявка за всяко четене и запис, необходими за операция четене-промяна-запис. Така процесорът получава четири прекъсвания от подсистемата, състоящи се от две заявки за четене и две заявки за запис (стъпки 2, 3, 6 и 7 в примера на фигура 3).

    Хардуерен / софтуерен RAID:тази реализация генерира същите четири прекъсвания като софтуерен RAID, тъй като опростяването в тази реализация е свързано в повечето случаи само с изчисляването на операцията XOR от специална микросхема XOR ASIC.

    Хардуерен RAID: I / O процесорът в хардуерната RAID подсистема обикновено скрива всички междинни операции за четене и запис и генерира само едно прекъсване - при успешното завършване на транзакцията. I/O процесорът прихваща всички други прекъсвания, освобождавайки процесора за изпълнение на задачи, различни от RAID.

    въз основа на материали от Dell и Intel

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

    В съвременната компютърна индустрия магнитните дискове се използват широко като вторична система за съхранение на данни, тъй като въпреки всичките си недостатъци те имат най-добрите характеристики за съответния тип устройство на достъпна цена.

    Особеностите на технологията за изграждане на магнитни дискове доведоха до значително несъответствие между повишаването на производителността на процесорните модули и самите магнитни дискове. Ако през 1990 г. най-добрите сред серийните бяха 5,25 ″ дискове със средно време за достъп 12 ms и време на забавяне от 5 ms (при скорост на шпиндела около 5000 rpm 1), днес дланта принадлежи на 3,5 ″ дискове с средно време за достъп от 5 ms и време на забавяне от 1 ms (при скорост на шпиндела 10 000 rpm). Тук виждаме подобрение на производителността от около 100%. В същото време скоростта на процесорите се е увеличила с повече от 2000%. Това до голяма степен става възможно благодарение на факта, че процесорите имат преките предимства от използването на VLSI (Extra Large Integration). Използването му не само дава възможност за увеличаване на честотата, но и на броя на компонентите, които могат да бъдат интегрирани в чипа, което прави възможно реализирането на архитектурни предимства, които позволяват паралелни изчисления.

    1 - Средни данни.

    Настоящата ситуация може да се опише като криза в I/O на вторична система за съхранение.

    Увеличаване на производителността

    Невъзможността за значително увеличаване на технологичните параметри на магнитните дискове води до необходимостта от намиране на други начини, един от които е паралелната обработка.

    Ако подредим блок от данни върху N диска от определен масив и организираме това подреждане така, че да има възможност за едновременно четене на информация, тогава този блок може да бъде прочетен N пъти по-бързо (без да се отчита времето за формиране на блока). Тъй като всички данни се предават паралелно, това архитектурно решение се нарича масив с паралелен достъп(масив с паралелен достъп).

    Едновременните масиви обикновено се използват за приложения, които изискват голям трансфер на данни.

    Някои задачи, от друга страна, се характеризират с голям брой малки заявки. Тези задачи включват например задачи за обработка на база данни. Чрез подреждане на записите на базата данни между дисковете в масива, можете да разпределите натоварването независимо, като позиционирате дисковете. Тази архитектура обикновено се нарича масив с независим достъп(масив с независим достъп).

    Повишаваме устойчивостта

    За съжаление, с увеличаването на броя на дисковете в масива, надеждността на целия масив намалява. При независими откази и експоненциален закон на MTTF разпределението, MTTF на целия масив (средно време до отказ) се изчислява по формулата MTTF масив = MMTF hdd / N hdd (MMTF hdd е средното време до отказ на един диск; NHDD е броят на дисковете).

    Следователно има нужда от подобряване на отказоустойчивостта на дисковите масиви. За повишаване на отказоустойчивостта на масивите се използва излишно кодиране. Има два основни типа кодиране, които се използват в излишните дискови масиви - дублиране и четност.

    Дублирането или огледалното копиране е най-често използваното в дисковите масиви. Простите огледални системи използват две копия на данните, като всяко копие е на отделни дискове. Тази схема е доста проста и не изисква допълнителни хардуерни разходи, но има един съществен недостатък - използва 50% от дисковото пространство за съхраняване на копие на информация.

    Вторият начин за внедряване на излишни дискови масиви е използването на излишно кодиране чрез изчисляване на паритета. Паритетът се изчислява като операция XOR на всички знаци в думата за данни. Използването на паритет в излишни дискови масиви намалява служебните разходи до стойност, изчислена по формулата: НР hdd = 1 / N hdd (НР hdd е режийната информация; N hdd е броят на дисковете в масива).

    История и развитие на RAID

    Въпреки че системите за съхранение на магнитни дискове се произвеждат от 40 години, масовото производство на устойчиви на грешки системи започва едва наскоро. Излишните дискови масиви, обикновено наричани RAID (излишни масиви от евтини дискове), бяха въведени от изследователи (Petterson, Gibson и Katz) в Калифорнийския университет, Бъркли през 1987 г. Но RAID системите станаха широко разпространени едва когато дисковете, които са подходящи за използване в излишни масиви, станаха достъпни и достатъчно производителни. Откакто RAID беше официално докладван през 1988 г., изследванията на излишните дискови масиви се разраснаха в опит да осигурят широк спектър от компромиси между цена, производителност и надеждност.

    Едно време имаше инцидент с абревиатурата RAID. Факт е, че към момента на писане на тази статия евтини дискове се наричаха всички дискове, използвани в компютър, за разлика от скъпите дискове за мейнфрейм (мейнфрейм). Но за използване в RAID масиви беше необходимо да се използва доста скъп хардуер в сравнение с други компютърни конфигурации, така че те започнаха да декриптират RAID като излишен масив от независими дискове 2 - излишен масив от независими дискове.

    2 - Определение на консултативния съвет за RAID

    RAID 0 беше въведен в индустрията като дефиниция за неустойчив на грешки дисков масив. В Бъркли RAID 1 беше дефиниран като огледален дисков масив. RAID 2 е запазен за масиви, които използват код на Хаминг. RAID нива 3, 4, 5 използват паритет за защита на данните от единични грешки. Именно тези нива, до и включително 5, бяха представени в Бъркли и тази RAID систематика беше приета като де факто стандарт.

    RAID нива 3,4,5 са доста популярни и имат добро използване на дисковото пространство, но имат един съществен недостатък - устойчиви са само на единични грешки. Това е особено вярно при използване на голям брой дискове, когато вероятността от едновременен престой на повече от едно устройство се увеличава. В допълнение, те се характеризират с дълго време за възстановяване, което също налага някои ограничения за тяхното използване.

    Към днешна дата са разработени доста голям брой архитектури, които осигуряват работоспособността на масива в случай на едновременна повреда на всеки два диска без загуба на данни. Сред разнообразието заслужава да се отбележи двуизмерният паритет и EVENODD, които използват паритет за кодиране, и RAID 6, който използва кодиране на Reed-Solomon.

    В схема за четност с две пространства всеки блок данни участва в изграждането на две независими кодови думи. По този начин, ако втори диск се повреди в същата кодова дума, се използва различна кодова дума за реконструкция на данните.

    Минималното съкращаване в такъв масив се постига с равен брой колони и редове. И равно на: 2 x Квадрат (N диск) (в "квадрат").

    Ако двуизмерният масив не е организиран в "квадрат", тогава, когато се приложи горната схема, излишъкът ще бъде по-висок.

    Архитектурата EVENODD има схема за отказоустойчивост, подобна на двумерния паритет, но различно разположение на информационните блокове, което гарантира минимално използване на излишния капацитет. Както и при двуизмерна четност, всеки блок от данни участва в изграждането на две независими кодови думи, но думите са подредени по такъв начин, че коефициентът на излишък е постоянен (за разлика от предишната схема) и е равен на: 2 x Квадрат (N диск).

    Използвайки два контролни знака, четност и недвоични кодове, думата за данни може да бъде проектирана така, че да осигури толерантност на грешки в случай на двойна грешка. Това е известно като RAID 6. Недвоичният код, базиран на кодиране на Reed-Solomon, обикновено се изчислява с помощта на таблици или итеративен процес, използвайки линейни затворени регистри, което е сравнително сложно и изисква специализиран хардуер.

    Като се има предвид, че използването на класически RAID опции, които осигуряват достатъчна отказоустойчивост за много приложения, често има неприемливо ниска производителност, изследователите от време на време прилагат различни движения, които спомагат за повишаване на производителността на RAID системите.

    През 1996 г. Savage и Wilks предложиха AFRAID, често излишен масив от независими дискове. Тази архитектура жертва до известна степен отказоустойчивостта за производителност. В опит да се компенсира проблема с малкото записване в RAID 5 масиви, е позволено да се премахва без паритет за определен период от време. Ако дискът, предназначен за запис на паритет, е зает, тогава записването му се отлага. Теоретично е доказано, че 25% намаление на отказоустойчивостта може да увеличи производителността с 97%. AFRAID всъщност променя устойчивия на грешки модел на масиви, тъй като кодова дума, която няма актуализиран паритет, е податлива на повреди на диска.

    Вместо да жертвате отказоустойчивостта, можете да използвате традиционни методи за подобряване на производителността, като например кеширане. Като се има предвид, че дисковият трафик е бурен, можете да използвате кеша за обратно запис, за да съхранявате данни, когато дисковете са заети. И ако кеш паметта е направена под формата на енергонезависима памет, тогава в случай на прекъсване на захранването данните ще бъдат запазени. Освен това мързеливите дискови операции дават възможност за комбиниране на малки блокове в произволен ред за извършване на по-ефективни дискови операции.

    Има също много архитектури, които предлагат печалби в производителността чрез жертване на обема. Сред тях са отложена модификация на лог диска и различни схеми за модифициране на логическото поставяне на данни във физическото, които дават възможност за по-ефективно разпределение на операциите в масива.

    Една от опциите - регистриране на паритет(регистрация на четност), която адресира проблема с малкия запис и прави по-ефективно използване на дисковете. Регистрирането на четност включва отлагане на промяната в четността в RAID 5 чрез записването му в регистрационния файл FIFO, който се намира отчасти в паметта на контролера и отчасти на диска. Като се има предвид, че достъпът до пълен запис е средно 10 пъти по-ефективен от достъпа до сектор, големи количества модифицирани данни за четност се събират с помощта на паритет, които след това се записват колективно на диск, предназначен да съхранява паритет в цялата песен.

    Архитектура плаващи данни и паритет(плаващи данни и паритет), което позволява преразпределение на физическите дискови блокове. На всеки цилиндър се поставят свободни сектори за намаляване ротационна латентност(закъснения при въртене), данните и паритетът се разпределят на тези празни пространства. За да се осигури работоспособност в случай на прекъсване на захранването, картата за паритет и данни трябва да се съхраняват в енергонезависима памет. Ако загубите картата на местоположението, всички данни в масива ще бъдат загубени.

    Виртуално премахване- е плаваща архитектура за данни и паритет, използваща кеш за обратно записване. Естествено осъзнаване на положителните страни и на двете.

    В допълнение, има и други начини за подобряване на производителността, като например операции с ленти RAID. По едно време Seagate изгради поддръжка за RAID операции в своите Fibre Chanel и SCSI устройства. Това направи възможно намаляването на трафика между централния контролер и дисковете в масива за RAID 5. Това беше радикална иновация в областта на внедряването на RAID, но технологията не получи началото, тъй като някои от характеристиките на Fiber Chanel и SCSI стандартите отслабват модела на отказ за дискови масиви.

    За същия RAID 5 беше представена архитектурата TickerTAIP. Изглежда така - възелът инициатор на централния контролен механизъм (инициаторният възел) получава потребителски заявки, избира алгоритъм за обработка и след това прехвърля работата с диска и паритета към работния възел (работния възел). Всеки работен възел обработва подмножество от дискове в масива. Както в модела на Seagate, работните възли прехвърлят данни помежду си без участието на иницииращия възел. В случай на повреда на работния възел дисковете, които той обслужва, стават недостъпни. Но ако кодовата дума е конструирана по такъв начин, че всеки от нейните символи се обработва от отделен работен възел, тогава схемата за отказоустойчивост повтаря RAID 5. За предотвратяване на откази на възела на инициатора, тя се дублира, така че получаваме архитектура, която е устойчив на повреди на всеки от своите възли. Въпреки всичките си положителни характеристики, тази архитектура страда от проблем с "дупка за запис". Което предполага появата на грешка, когато няколко потребители сменят кодовата дума едновременно и възелът се провали.

    Трябва да спомена и един доста популярен начин за бързо възстановяване на RAID - използване на резервен диск. Ако един от дисковете в масива се повреди, RAID може да бъде възстановен с помощта на свободен диск вместо неуспешния. Основната характеристика на тази реализация е, че системата преминава в предишното си (fail-safe състояние без външна намеса). С разпределена резервна архитектура, резервните дискови логически блокове са физически разпределени между всички дискове в масива, елиминирайки необходимостта от повторно изграждане на масива, ако диск се повреди.

    За да избегнете проблема с възстановяването с класическите нива на RAID, архитектура, наречена декластериране на паритет(паритетно разпределение). Това включва поставяне на по-малко логически устройства с повече капацитет на по-малки, но по-големи физически устройства. С тази технология времето за реакция на системата към заявка по време на реконструкция се удвоява повече от два пъти, а времето за реконструкция е значително намалено.

    Основна архитектура на RAID слой

    Сега нека разгледаме по-подробно архитектурата на основните нива на RAID. Преди да разгледаме, нека направим някои предположения. За да демонстрирате принципите на изграждане на RAID системи, разгледайте набор от N дискове (за простота N ще се счита за четно число), всеки от които се състои от M блокове.

    Данните ще бъдат обозначени с D m, n, където m е броят на блоковете данни, n е броят на подблоковете, на които D блокът данни е разделен.

    Дисковете могат да бъдат свързани към един или няколко канала за предаване на данни. Използването на повече канали увеличава пропускателната способност на системата.

    RAID 0. Ивици дисков масив без отказоустойчивост

    Това е дисков масив, в който данните са разделени на блокове и всеки блок се записва (или чете) на отделен диск. По този начин множество I/O операции могат да се извършват едновременно.

    Предимства:

    • Най-висока производителност за приложения, които изискват интензивна обработка на I/O заявки и големи обеми данни;
    • лекота на изпълнение;
    • ниска цена за единица обем.

    недостатъци:

    • не е толерантно на грешки решение;
    • една повреда на диска ще доведе до загуба на всички данни в масива.

    RAID 1. Дисков масив с дублиране или дублиране

    Mirroring е традиционен метод за подобряване на надеждността на малък дисков масив. В най-простата версия се използват два диска, на които се записва една и съща информация и в случай на повреда на един от тях остава неговият дубликат, който продължава да работи в същия режим.

    Предимства:

    • лекота на изпълнение;
    • лекота на възстановяване на масив в случай на повреда (копиране);
    • сравнително висока производителност за приложения с голямо търсене.

    недостатъци:

    • висока цена на единица обем - 100% излишък;
    • ниска скорост на трансфер на данни.

    RAID 2. Устойчив на грешки дисков масив, използващ Hamming Code ECC.

    Излишното кодиране, използвано в RAID 2, се нарича код на Хаминг. Кодът на Хаминг ви позволява да коригирате единични и да откриете двойни грешки. Днес той се използва активно в технологията за кодиране на данни в RAM като ECC. И кодиране на данни на магнитни дискове.

    В този случай е показан пример с фиксиран брой дискове поради тромавото описание (думата за данни се състои от 4 бита, съответно ECC код от 3).

    Предимства:

    • бързо коригиране на грешки (в движение);
    • много висока скорост на пренос на данни на големи обеми;
    • с увеличаване на броя на дисковете се намаляват режийните разходи;
    • доста проста реализация.

    недостатъци:

    • висока цена с малък брой дискове;
    • ниска скорост на обработка на заявката (не е подходяща за системи, ориентирани към обработка на транзакции).

    RAID 3. Дискове за паралелен трансфер с четност

    Данните се разделят на подблокове на ниво байт и се записват едновременно на всички дискове в масива с изключение на един, който се използва за четност. Използването на RAID 3 решава проблема с високата резервираност в RAID 2. Повечето от контролните дискове, използвани в RAID ниво 2, са необходими за намиране на неуспешния бит. Но това не е необходимо, тъй като повечето контролери са в състояние да определят кога даден диск се е повредил, като използват специални сигнали или допълнително кодиране на информация, записана на диска и използвана за коригиране на случайни повреди.

    Предимства:

    • много висока скорост на трансфер на данни;
    • повредата на диска има малък ефект върху скоростта на масива;

    недостатъци:

    • трудно изпълнение;
    • ниска производителност с висока интензивност на заявките за малки данни.

    RAID 4. Независими дискове с данни със споделен диск за четност

    Данните се разбиват на ниво блок. Всеки блок данни се записва на отделен диск и може да се чете отделно. Паритетът за група блокове се генерира при запис и се проверява при четене. RAID ниво 4 подобрява производителността на малки трансфери на данни чрез паралелизъм, което ви позволява да извършвате повече от един I/O едновременно. Основната разлика между RAID 3 и 4 е, че при последния разделянето на данни се извършва на ниво сектор, а не на ниво бит или байт.

    Предимства:

    • много висока скорост на четене на големи обеми данни;
    • висока производителност с висока интензивност на заявките за четене на данни;
    • ниски режийни разходи за внедряване на излишък.

    недостатъци:

    • много ниска производителност при запис на данни;
    • ниска скорост на четене на малки данни с единични заявки;
    • асиметрия на представянето по отношение на четене и писане.

    RAID 5. Независими дискове с данни с разпределени блокове за паритет

    Това ниво е подобно на RAID 4, но за разлика от предишното, паритетът се разпределя циклично между всички дискове в масива. Тази промяна подобрява производителността при писане на малки количества данни в многозадачните системи. Ако операциите по запис са правилно планирани, е възможно да се обработват до N / 2 блока паралелно, където N е броят на дисковете в групата.

    Предимства:

    • висока скорост на запис на данни;
    • достатъчно висока скорост на четене на данни;
    • висока производителност с висока интензивност на заявките за четене/запис на данни;
    • ниски режийни разходи за внедряване на излишък.

    недостатъци:

    • скоростта на четене на данни е по-ниска, отколкото в RAID 4;
    • ниска скорост на четене/запис на малки данни с единични заявки;
    • доста сложно изпълнение;
    • сложно възстановяване на данни.

    RAID 6. Независими дискове с данни с две независими разпределени схеми за паритет

    Данните се разделят на ниво блок, подобно на RAID 5, но в допълнение към предишната архитектура се използва втора схема за подобряване на отказоустойчивостта. Тази архитектура е толерантна към двойни грешки. Въпреки това, когато се извършва логическо записване, всъщност има шест достъпа до диска, което значително увеличава времето за обработка на една заявка.

    Предимства:

    • висока устойчивост;
    • достатъчно висока скорост на обработка на заявката;
    • относително ниски режийни разходи за внедряване на излишък.

    недостатъци:

    • много сложно изпълнение;
    • комплексно възстановяване на данни;
    • много ниска скорост на запис на данни.

    Съвременните RAID контролери ви позволяват да комбинирате различни нива на RAID. По този начин е възможно да се внедрят системи, които съчетават предимствата на различни нива, както и системи с голям брой дискове. Това обикновено е комбинация от премахване и някакво ниво на отказоустойчивост.

    RAID 10. Отказоустойчиви дублирани и паралелни масиви

    Тази архитектура е масив RAID 0, чиито сегменти са масиви RAID 1. Тя съчетава много висока отказоустойчивост и производителност.

    Предимства:

    • висока устойчивост;
    • висока производителност.

    недостатъци:

    • много висока цена;
    • ограничено мащабиране.

    RAID 30. Устойчив на грешки масив с паралелен трансфер на данни и повишена производителност.

    Това е RAID 0 масив, сегментите на който са масиви RAID 3. Той съчетава отказоустойчивост и висока производителност. Обикновено се използва за приложения, изискващи голям сериен трансфер на данни.

    Предимства:

    • висока устойчивост;
    • висока производителност.

    недостатъци:

    • висока цена;
    • ограничено мащабиране.

    RAID 50. Отказоустойчив разпределен масив за четност с повишена производителност

    Това е RAID 0 масив със сегменти от RAID 5. Той съчетава устойчивост на грешки и висока производителност за приложения с голямо търсене и високи скорости на трансфер на данни.

    Предимства:

    • висока устойчивост;
    • висока скорост на трансфер на данни;
    • висока скорост на обработка на заявките.

    недостатъци:

    • висока цена;
    • ограничено мащабиране.

    RAID 7. Устойчив масив, оптимизиран за производителност. (Оптимизирана асинхронност за високи I/O скорости, както и високи скорости на трансфер на данни). RAID 7® е регистрирана търговска марка на Storage Computer Corporation (SCC)

    За да разберем архитектурата на RAID 7, нека разгледаме неговите характеристики:

    1. Всички заявки за трансфер на данни се обработват асинхронно и независимо.
    2. Всички операции за четене/запис се кешират през високоскоростната x-bus.
    3. Дискът за паритет може да бъде поставен на всеки канал.
    4. Микропроцесорът на контролера на масива използва операционна система в реално време, ориентирана към процеса.
    5. Системата има добра мащабируемост: до 12 хост интерфейса и до 48 диска.
    6. Операционната система контролира комуникационните канали.
    7. Използват се стандартни SCSI дискове, шини, дънни платки и модули памет.
    8. Високоскоростната X-bus се използва за работа с вътрешната кеш памет.
    9. Рутината за генериране на паритет е интегрирана в кеша.
    10. Дисковете, прикрепени към системата, могат да бъдат обявени за свободно стоящи.
    11. SNMP агент може да се използва за управление и наблюдение на системата.

    Предимства:

    • висока скорост на трансфер на данни и висока скорост на обработка на заявки (1,5 - 6 пъти по-висока от другите стандартни нива на RAID);
    • висока мащабируемост на интерфейсите на хоста;
    • скоростта на запис на данни се увеличава с увеличаване на броя на дисковете в масива;
    • няма нужда от допълнително предаване на данни за изчисляване на паритета.

    недостатъци:

    • собственост на един производител;
    • много висока цена на единица обем;
    • кратък гаранционен срок;
    • не може да се обслужва от потребителя;
    • трябва да използвате непрекъсваемо захранване, за да предотвратите загуба на данни от кеш паметта.

    Нека сега заедно да разгледаме стандартните нива, за да сравним техните характеристики. Сравнението е направено в рамките на архитектурите, посочени в таблицата.

    RAIDМинимум
    дискове
    Трябва
    в дискове
    Неуспех
    устойчивост
    Скорост
    предаване на данни
    Интензивност
    обработка
    искания
    Практичен
    употреба
    0 2 н много високо
    до N x 1 диск
    Графика, видео
    1 2 2N * R> 1 диск
    W = 1 диск
    до 2 x 1 диск
    W = 1 диск
    малки файлови сървъри
    2 7 2N ~ RAID 3Нискамейнфреймове
    3 3 N + 1 НискаГрафика, видео
    4 3 N + 1 R WR = RAID 0
    У
    файлови сървъри
    5 3 N + 1 R WR = RAID 0
    У
    сървъри на база данни
    6 4 N + 2най-високиятнискоR> 1 диск
    У
    използва се изключително рядко
    7 12 N + 1 най-високиятнай-високиятразлични видове приложения

    Уточнения:

    • * - разглежда се често използваната опция;
    • k е броят на подсегментите;
    • R - четене;
    • W - запис.

    Някои аспекти на внедряването на RAID системи

    Нека разгледаме три основни варианта за внедряване на RAID системи:

    • софтуер (базиран на софтуер);
    • хардуерно помещение - на базата на автобуси;
    • хардуер - автономна подсистема (базирана на подсистеми).

    Не може да се каже еднозначно, че една реализация е по-добра от друга. Всяка опция за организиране на масива удовлетворява едни или други нужди на потребителя в зависимост от финансовите възможности, броя на потребителите и използваните приложения.

    Всяка от горните реализации се основава на изпълнение на код. Те всъщност се различават по това къде се изпълнява този код: в централния процесор на компютър (софтуерна реализация) или в специализиран процесор на RAID контролер (хардуерна реализация).

    Основното предимство на внедряването на софтуер е ниската цена. Но в същото време той има много недостатъци: ниска производителност, натоварване с допълнителна работа на централния процесор, увеличен трафик на автобуси. Простите нива на RAID 0 и 1 обикновено се прилагат в софтуер, тъй като не изискват значителни изчисления. Имайки предвид тези функции, софтуерно базираните RAID системи се използват в сървърите от начално ниво.

    Хардуерните реализации на RAID струват повече от софтуерния RAID, тъй като използват допълнителен хардуер за извършване на I/O операции. В същото време те разтоварват или освобождават централния процесор и системната шина и съответно повишават производителността.

    Ориентираните към шината реализации са RAID контролери, които използват високоскоростната шина на компютъра, в който са инсталирани (напоследък обикновено се използва PCI шината). От своя страна, ориентираните към шината реализации могат да бъдат разделени на ниско и високо ниво. Първите обикновено нямат SCSI чипове и използват така наречения RAID порт на дънна платка с вграден SCSI контролер. В този случай функциите за обработка на RAID код и I/O операции се разпределят между процесора на RAID контролера и SCSI чиповете на дънната платка. По този начин централният процесор се освобождава от обработка на допълнителен код и трафикът на шината е намален в сравнение със софтуерната версия. Цената на такива карти обикновено е ниска, особено ако са фокусирани върху RAID - 0 или 1 системи (има и реализации на RAID 3, 5, 10, 30, 50, но те са по-скъпи), поради което те постепенно измести софтуерните реализации от пазара на сървъри от начално ниво. Контролерите на автобуси от високо ниво имат малко по-различна структура от техните малки братя. Те поемат всички функции, свързани с I/O и изпълнение на RAID код. Освен това те не са толкова зависими от изпълнението на дънната платка и като правило имат повече възможности (например възможност за свързване на модул за съхранение на информация в кеша в случай на повреда на дънната платка или прекъсване на захранването) . Тези контролери обикновено са по-скъпи от контролерите от ниско ниво и се използват в сървъри от среден и висок клас. Те по правило внедряват RAID нива 0,1, 3, 5, 10, 30, 50. Като се има предвид, че ориентираните към шината реализации са свързани директно към вътрешната PCI шина на компютъра, те са най-продуктивните сред системите под съобразяване (при организиране на една хост системи). Максималната производителност на такива системи може да достигне 132 MB/s (32bit PCI) или 264 MB/s (64bit PCI) с честота на шината от 33MHz.

    Заедно с изброените предимства, ориентираната към шината архитектура има следните недостатъци:

    • зависимост от операционната система и платформата;
    • ограничена мащабируемост;
    • ограничени възможности за организиране на отказоустойчиви системи.

    Всички тези недостатъци могат да бъдат избегнати чрез използване на самостоятелни подсистеми. Тези системи имат напълно автономна външна организация и по принцип представляват отделен компютър, който се използва за организиране на системи за съхранение на информация. Освен това, в случай на успешно развитие на технологията на оптичните канали, производителността на автономните системи по никакъв начин няма да бъде по-ниска от системите, ориентирани към шини.

    Обикновено външен контролер се поставя в отделна стойка и, за разлика от системите с организация на шината, той може да има голям брой входно-изходни канали, включително хост канали, което прави възможно свързването на няколко хост компютъра към системата и организиране клъстерни системи. В системи със самостоятелен контролер могат да бъдат внедрени контролери за горещо резервиране.

    Един от недостатъците на автономните системи е тяхната висока цена.

    Имайки предвид горното, отбелязваме, че самостоятелните контролери обикновено се използват за внедряване на складове за данни с голям капацитет и клъстерни системи.