RAID
RAID ( излишни низ независних дискова) је технологија складиштења која комбинује више компоненти дискова у логичку јединицу ради редудантности података и побољшања перформанси. Подаци се дистрибуирају преко дискова на један од неколико начина, који се односе на RAID нивое, у зависности од специфичног нивоа редудантности и жељених перформанси.

Термин "RAID" је први пут коришћен 1987. године од стране David Patterson, Garth A. Gibson и Randy Katz са Универзитета Калифорније (Беркли), који је значио редудантни низ јефтиних дискова. Индустрија RAID произвођача касније је имала тенденцију да интерпретира то као акроним који стоји за редудантни низ независних дискова.

RAID се данас користи као општи израз за шеме рачунара који складиште податаке који могу бити подељени и поновљени између више физичких дискова. RAID је пример виртуализације складишта и низу се може приступити помоћу оперативног система као да је један диск. Различите шеме или архитектуре се називају помоћу речи RAID за којом следе бројеви (нпр. RAID 0, RAID 1). Свака шема обезбеђује различити баланс између кључних делова: поузданост и расположивост, перформансе и капацитет. RAID нивои изнад RAID 0 обезбеђују заштиту од непоправљиве (сектор) грешке у читању, као и од квара целог диска.

Историја 
Norman Ken Ouchi из IBM-а је награђен 1978. године U.S. patent 4,092,732 са називом "System for recovering data stored in failed memory unit." Закључак овог патента описује шта ће се касније назвати RAID 5 са пуном траком уписа. Овај патент из 1978. године такође помиње пресликавање или дуплирање дискова (касније ће бити назван RAID 1) и заштиту са посебном парношћу (касније ће бити назван RAID 4) био је пре уметнички у то време.

Термин RAID су први пут дефинисали David A. Patterson, Garth A. Gibson и Randy Katz са University of California, Berkeley, 1987. године. Они су проучавали могућност коришћења два или више диска који изгледају као један уређај за хост систем и објавили су рад "A Case for Redundant Arrays of Inexpensive Disks (RAID)", јуна 1988 година на SIGMOD конференцији.

Стандардни нивои 
Број стандардних шема је еволуирао. Оне се зову нивои. Првобитно, постојало је пет RAID новоа, али многе варијације се еволуирале – нарочито неколико угњеждених нивоа и многи нестандардни нивои (углавном власнички). RAID нивои и асоцирани формати података су стандардизовани од Storage Networking Industry Association (SNIA) у Common RAID Disk Drive Format (DDF) стандард:

RAID 0 
RAID 0 обухвата стрипинг (али не паритет или пресликавање). Он побољшава перформансе али не доприноси редудантности и не побољшава толеранцију на грешке. Сваки квар диска уништава низ, и вероватноћа расте са повећањем броја дискова у низу.

RAID 1 
RAID 1 обухвата пресликавање (без парности и стрипинга). Подаци су идентично написани у два (или више) дискова, продукујући на тај начин „пресликани скуп“. Захтев читања се сервисира помоћу један од два диска који садрже тражене податке. Ово може да побољша перформансе ако се подаци читају са диска са најмање тражене латенције и ротационе латенције. Насупрот томе, перформансе писања могу бити деградиране, јер оба диска мора да се ажурирају; тако перформансе писања је одређена споријим од два диска. Низ наставља да ради све, док бар један диск функционише.

RAID 2 
RAID 2 обухвата стрипинг на битовском нивоу са посвећеним Хаминговим-кодом парности. Све ротације осовина диска су синхронизоване и подаци су тракасти тако да је сваки секвенцијални бит на другом диску. Хамингов-код парности се израчунава преко одговарајућих битова и складишти се на бар једном паритетном диску.

RAID 3 
RAID 3 обухвата стрипинг на бајтовском нивоу са посвећеном парношћу. Све ротације осовина дискова су синхронизоване и подаци су пругасти тако да је сваки секвенцијални бајт на другом диску. Парност се рачуна преко одговарајућих бајтова и складишти се на посвећеном диску парности. Иако имплементација постоји, RAID 3 се ретко користи у пракси.

RAID 4 
RAID 4 обухвата стрипинг на нивоу блока са посвећеном парношћу. Парност података се складишти на једном посвећеном диску.
RAID 4 је био превасходно коришћен од NetApp, али је сада углавном замењен имплементацијом RAID 6 (RAID-DP).

RAID 5 
RAID 5 обухвата стрипинг на нивоу блока са дистрибуираном парношћу. Супротно од RAID 4, парност информација је дистрибуирана између дискова. Он захтева да сви дискови сем једног буду оперативни. На квар једног диска, следеће се читање може израчунати из дистрибуиране парности тако да ниједан податак не буде изгубљен. RAID 5 захтева најмање три диска.

RAID 6 
RAID 6 обухвата стрипинг на нивоу блока са дупло дистрибуираном парношћу. Дупла парност обезбеђује толеранцију на квар од највише два диска. Ово омогућава да веће RAID групе буду практичније, посебно за високо-доступне системе, како дискови високог-капацитета траже више времена да се обнове. Као и код RAID 5, квар једног диска резултује смањењем перформанси целог низа све док се диск не замени.

Угнеждени RAID нивои (RAID 10, 0+1, 100, 30, 50, и 60) 
RAID нивои могу бити угнеждени. Види Угнеждени RAID нивои.

Поређење 
Следећа табела омогућава поглед на нека разматрања стандардних RAID нивоа. У сваком случају:
 Низ ефикасности простора је дат као израз у смислу броја дискова, ; овај израз означава фракциону вредност између нуле и једнице, што представља део збира капацитета дискова који је нама доступан. На пример, ако су три диска повезана у RAID 3, ово даје низ ефикасности простора од  тако, ако сваки диск има капацитет од 250 GB, онда низ има укупни капацитет od 750 GB, али капацитет који је тако доступан за складиштење података је само 500 GB.
 Вредност грешке низа је дата као израз по броју дискова, ; а вредност квара диска,  (за који се претпоставља да је исти и независтан за сваки диск) и може се видети као Bernoulli trial. На пример, ако сваки од три диска има вредност квара од 5% током следеће три године, а три диска су повезана у RAID 3, онда ово даје вредност квара низа током следеће 3 године од:

Угнежден (хибридни) RAID 
У почетку је првобитно назван хибридни RAID, па су многи контролери за складиштење дозвољавали угнеждене RAID нивое. Елементи RAID-а могу бити или индивидуални дискови или сам RAID. Међутим, ако је RAID елемент неког другог RAID-а, то је необично да његови елементи сами себи буду RAID.

Крајњи RAID је познат као највиши низ. Када је највиши низ RAID 0 (као код RAID 1+0 и RAID 5+0) већина продаваца изоставља "+" (чиме се добија RAID 10 и RAID 50, респективно).
 RAID 0+1: тракасти скуп у пресликаном скупу (минимално 4 диска; паран број дискова) обезбеђује телеранцију квара и побољшава перформансе али повећава комплексност.
 Главни разлика од RAID 1+0 је та да RAID 0+1 формира секундарни тракасти скуп да би пресликао примарни тракасти скуп. Низ наставља да ради, ако једнан или више дискова откажу, у истом пресликаном скупу, али ако дискови откажу у оба скупа подаци на RAID су изгубљени.
 RAID 1+0: (а.к.а RAID 10) пресликани скуп у тракастом скупу (минимално 4 диска; паран број дискова) обезбеђује телеранцију на квар и побољшава перформансе али повећава комплексност.
 Главана разлика од RAID 0+1 је та да RAID 1+0 прави тракасти скуп из серија пресликаних дискова. Низ може да издржи вишеструки отказ дискова све док не постоји пресликабање које ће да игуби све дискове.

RAID парност 
Многи RAID нивои укључују заштиту шеме од грашке која се зове „парност“, широко коришћен метод у информационим технологијама да пружи заштиту од отказа у датом скупу података. Већина користи једноставну НИЛИ парност описану у овом одељку, али RAID 6 користи две одвојене парности базиране респективно на сабирању и множењу у посебном Galois Field или Reed–Solomon error correction.

Не-стандардни нивои 
Многе конфигурације су другачије од стандардних бројева RAID нивоа, и многе компаније, организације и групе су направиле су своју не-стандардну конфигурацију, у многим случајевима дизајнирану за специјалне потзребе мале ниша групе. Већина не-стандардинх RAID нивоа је у власништву:
 Linux MD RAID10 (RAID 10) имплементира општи RAID управљач који подразумева стандардни RAID 1 са два диска, и стандардни RAID 1+0 са четири диска, али може имати било који број дискова, укључујући и непарни број. MD RAID 10 може да ради као тракасто и пресликано, чак и са само два диска са f2 распоредом (пресликан са тракастим читањем, дајући перформанс читања као RAID 0; стандардно Linux софтвер RAID 1 не чита тракасто, али може да чита паралелно)
 Hadoop има RAID систем који генерише парност фајлова помоћу НИЛИовањем трака блока у једном HDFS фајлу.
 RAID-F, као имплементација у FlexRAID, обезбеђује RAID преко File System. RAID машине у том систему су не-стандардни и имају своју номенклатуру у облику Tx, где је Т стоји за Толеранцију и х репрезентује ниво толеранције. Најпознатија од свих је Tx машина која обезбеђује RAID∞ (бесконачно) заштиту података и опоравака.

Резервна копија података 
RAID систем који се користи као секундарно складиште није алтернатива за прављење резервних копија података. У RAID нивоима већим од 0, RAID штити од катастрофалног губитка података узрокованим физичким оштећењем или грешком на једном диску у оквиру низа (или два диска у, код RAID 6). Међутим, прави систем за резервне копије има друге важне карактеристике као што су могоћност обнове старије верзије података, која је потребна за заштиту против софтверских грешака које пишу нежељене податаке на секундарно складиште, и такође да се обнове од корисничких грешака и малициозних брисања података. RAID може бити поражен од катастрофалног отказа који превазилази његову способност опоравка, и наравно, цео низ је у ризику од физичког оштећења ватром, природних катастрофа и људске силе, док се резервне копије могу чувати ван локације. RAID је такође рањив на отказ контролера зато што није увек могуће да РАИД мигрира на нови, други контолер без губитка података.

Имплементација 
Дистрибуција податак на више дискова може бити реализована или помоћу намењеног компјутерског хардвера или помоћу софтвера. Софтверско решење може бити део оперативног система, или може бити део firmware (firmware је комбинација постојане меморије и програмског кода и података који су сачувани у њему) и управљача добијеног са хардверским RAID контролером.

RAID базиран на софтверу 
Имплементације софтверског RAID-а сада омогућавају многи оперативни системи. Софтверски RAID може бити имплеметиран као:
 Слој који апстрахује више уређаја, чиме обезбеђује један витуелни уређај (нпр. Linux-ов md)
 Више генерички логичан волумен управљања (обезбеђен са највећим сервер- класификаторским оперативним системима, нпр. Veritas or LVM)
 Компоненета система датотека (нпр. ZFS or Btrfs)

Волумен управљања подршке 
Сервер класификатор оперативног система обично обезбеђује логично управљање волуменом, који омогућава систему да користи логичне волумене који могу променити величину или могу да буду померени. Често, функције као што су RAID или snapshots су такође подржане.
 Vinum је логични волумен управљања који подржава RAID 0, RAID 1 и RAID 5. Vinum је део основне дистрибуције FreeBSD оперативног система, и верзије постоје за NetBSD, OpenBSD, и DragonFly BSD.
 Solaris SVM подржава RAID 1 за boot filesystem, и додаје RAID 0 и RAID 5 подршку (и разне комбинације угнежђених) за дискове података.
 Linux LVM подржава RAID 0 и RAID 1.
 HP's OpenVMS обезбеђује форму RAID 0 звану "Volume shadowing", даје могућност за пресликавање података на удаљеним кластер системима.

Подршка систему датотека 
Неки напредни системи за датотеке су дизајнирани да организују податке директно међу више уређаја за сладиштење (без потребе помоћи од трећег-парти логичног волуменског управљања):
 ZFS подржава еквиваленте од RAID 0, RAID 1, RAID 5 (RAID Z), RAID 6 (RAID Z2) и верзију тростуке-парности RAID Z3. Како је увек тракаст преко највишег нивоа vdevs, он подржава еквиваленте 1+0, 5+0, and 6+0 угнежђених RAID нивоа (као и тракасти скуп троструке-парности) али не и друге угнеждене комбинације. ZFS је оригинални систем датотека на Solaris-у и такође је доступан на FreeBSD and Linux.
 Btrfs подржава RAID 0, RAID 1 и RAID 10 (RAID 5 и 6 су у развоју).

Подршка оперативног система 
Многи оперативни системи обезбеђују основну RAID функционалност независно од волумена управљања:
 Apple-ов OS X и OS X Server подржавају RAID 0, RAID 1, и RAID 1+0.
 FreeBSD подржава RAID 0, RAID 1, RAID 3, и RAID 5 и сва угнеждења преко GEOM модула и ccd.
 Linux's md подржава RAID 0, RAID 1, RAID 4, RAID 5, RAID 6, и сва угнеждења. Одређено преобликовање/промена величине/операције проширења су такође подржани.
 Microsoft-ов серверски оперативни систем подржава RAID 0, RAID 1 и RAID 5. Неки од Microsoft-ових кућних оперативних система подржавају RAID. На пример, Windows XP Professional подржава RAID нивоа 0, поред спеновања више дискова, али само ако се користе динамички дискови и волумени. Windows XP може бити модификован да подржава RAID 0, 1 и 5. Windows 8 и Windows Server 2012 представљају RAID-као особину која је позната као Storage Spaces, која такође омогућава корисницима да подесе пресликавање, парност или нема редудантности на folder-by-folder основи.
 NetBSD подржава RAID 0, 1, 4, и 5 преко његових софтверских имплементација, именованих као RAIDframe.

Временом, повећање брзине артикла CPU је било значајно веће него повећање протока диска; проценат времена домаћег CPU које је потребно да се засити дати број дискова је смањен. На пример, под 100% искоришћењем једног језгра на 2.1 GHz Intel "Core2" CPU, Linux-ов софтвер RAID подсистем (md) верзије 2.6.26 је у стању да израчуна парност информација на 6 GB/s; међутим, три-диска RAID 5 низ који користи дискове способне да подрже операцију писања на 100 MB/s само захтева парност да буде израчунат на брзини од 200 MB/s, што захтева ресурсе од преко 3% једног CPU језгра.

Firmware/управљачки-основан RAID 
RAID имплементација на нивоу оперативног система није увек компатибилна са системским boot процесима, и генерално је непрактична за кућну верзију Windows-а (као што је описано горе). Међутим, хардвер RAID контролери су скупи и својствени. Да би попунили ову рупу, јефтини "RAID контролери“ су уведени да не садрже наменски RAID контролер чип, већ једноставно стандардни контролер диска са посебним firmware и управљачем; током ране фазе старта RAID се реализује помоћу firmware, и када је оперативни систем потпуно учитан, тада управљачи комплетно преузимају контролу. Сходно томе, такви контролери не могу радити када подршка управљача није доступна за главни оперативни систем.

Подаци пречишћавања/патрола читања 
Подаци рибања подразумевају периодично очитавање и проверавање помоћу RAID контролера, укључујући и оне који нису иначе приступни. Ово детектује лоше блокове пре употребе.

У неким окружењима, документација се односи на податке рибања као патролно читање. Патролно читање проверава за лоше блокове на сваком складишном уређају у низу, али користи и редудантност низа да опорави лоше блокове на једном диску и да поново додели опорављене податке у резервним копијама на другом месту диска.

RAID са полупроводничким дисковима 
RAID може да оебзбеди сигурност података са полупроводничким дисковима (SSDs) без трешкова за цео SSD систем. На пример, брзи SSD може да буде пресликан са механичким диском. За ову конфигурацију која пружа значајну предност у брзини, потребан је одговарајући контролер који користи брзи SSD за опрације читања. Adaptec је ово назвао „хибридни RAID", исти термин се некада користи за угнеждени RAID.

Слабости

Корелација неуспеха 
У пракси, дикови су често истих година (са сличним хабањем) и подлежу истом окружењу. Пошто су многи откази диска због механичких проблема (који су вероватнији на старијим дисковима), то крши те претпоставке; неуспеси су у ствари статистички повезани. У пракси, шансе да други откаже пре него што се први опорави (узрокује губитак података) нису вероватне колико и четири насумична квара. У студијама од око 100.000 дискова, вероватноћа да два диска у истом кластеру откажу у времену од једног сата била је четири пута већа него предвиђена експоненцијална статистичка расподела – која карактерише процесе у којима се догађаји дешавају континуирано и независно при константној просечној брзини. Вероватноћа два неуспеха у распону од 10 сати била је два пута већа од предвићене експоненцијалне дистибуције.

Заједничко очекивање је да ће дизајн диска за серверску упетребу ређе отказати него потрошачки-оцењени дискови који се обично користе у кућним рачунарима. Студије Carnegie Mellon University и независно од Google, су утврдиле да „оцена“ неког диска није повезана са брзином неуспеха тог дика.

Непоправљиве грешке читања (URE) током обнове 
Непоправљиве грешке читања презентују се као неуспех на сектору за читање. Брзина непоправљивих битних грешака (UBE) је углавном специфицирана 1 бит у 1015 за ниво дискова у предузећима (SCSI, FC, SAS), и 1 бит у 1014 за класу кућних дискова (IDE/ATA/PATA, SATA). Повећање капацитета диска и већа редудантност RAID 5 група је довала до повећања неспособности да се успешно обнови RAID група после отказа диска зато што се непоправљиви сектор налази на осталим дисковима. Шеме парности такве као RAID 5, када су поправке нарочито склоне UREs ефектима, како оне утичу не само на сектор где се јављају већ такође реконструисани блокови користе тај сектор за израчунавање парности; типични URE током RAID 5 обнове доводи до потпуног квара опоравка.

Шеме са дуплом заштитом такве као RAID 6 покушавају да реше овај проблем, али пате од веома високе казне уписа. Шеме које дуплирају (пресликавају) податке као што је RAID 1 и 10 имају мањи ризик од URE него они који користе рачунање парности. Позадинско пречишћавање меже се користити да се детектује и опорави од UREs (који су латентни и невидљиво компензовани за динамички од стране RAID контролера) као позадински процес, помођу реконструкције редудантних RAID података и онда поново напише и поново мапира на нови сектор; и тако смањи ризик од двоструког отказа RAID система.

Време опоравака се повећава 
Капацитет диска се брже повећавао него брзина преноса, и брзине грешака су само мало пале. Због тога, дисковима великих капацитета требају веше сати, ако не и дана, да се обнове. Време обнове је такође лимитирано ако је цео низ још увек у употреби са самњеним капацитетом. За дати RAID са само једним диском редундансе (RAID 3, 4 и 5), други отказ диска узроковао би потпуни отказ низа. Иако се средње време између отказа (MTBF) идивидуалних дискова повећало током времена, ово повећање није задржало корак са повећањем капацитета дискова. Време да се обнови низ после једног отказа диска, као и шанса за други отказ приликом обнове, се повећала током времена. Шеме пресликавања као код RAID 10 имају везано време за опоравак пошто захтевају копију једног диска који је отказао, у поређењу са шемом парности као код RAID 6, који захтева копију свих блокова диска у скупу низа. Трострука шема парности, или троструко пресликавање, је предложено као један приступ за повећање отпорности на додатни отказ диска приликом дугог времена опоравка.

Атомистички: укључивање недостатак парности због пада система 
Пад система или други прекид операције писања може довести до стања где је парности неконзистентна са подацима због не-атомистичког процеса уписивања, тако да се парност не може користити за опоравак у случају квара диска (такозвана рупа RAID 5 уписивања – види доле).

Ово је мало разумљиво и ретко се помиње неуспешни мод за сувишне складишне системе који не користе трансакционе особине. Истраживач базе података Џим Греј је написао „Ажурирање у Месту је Отровна јабука“ у раним данима комерцијализације базе података.

RAID уписина рупа 
RAID уписина рупа је познат проблем корупције података у старијим и јефтинијим RAID-има, изазван прекидима destaging писања на диску.

Поузданост писања кеша 
Што се тиче постојања поузданости писања кеша, специфично је гледање уређаја који су опремљени са кешом за одложено ажурирање – систем кеширања који пријављује податке као уписане чим се упишу у кеш, за разлику од не-испарљивог медијума.

Алгоритам за опоравак грешака диска 
Често, RAID контролер је подешен да одустане од компоненте диска (то јест, да претпостави да је дошло до отказа компоненте диска) ако је диск неодговарајући за 8 секунди или тако; ово може да узрокује да контролер низа одустане од доброг диска зато што диск није добио довољно времена да заврши свју унутрашњу процедуру за опорављање од грешака. Због тога, десктоп дискови могу бити ризични у RAID-у, а такозвана класа дискова за предузеће лимитира ово време за опоравак од грешке да би самњила тизик.

Western Digital-ов desktop дискови користе пецифичне исправке. Корисност која се зове WDTLER.exe ограничавала је време опоравка грешака на диску. Кприсност је омогућио TLER (временски ограничен опоравак грешке), који ограничава време за опоравак грешка до 7 секунди. Септембра 2009. године, Western Digital је онемогућио ову функцију у својим десктоп дисковима (нпр. Caviar Black линија), што такве дискове чини неподобним за употребу у RAID.

Међутим, Western Digital дискови класе предузећа се испоручују из фабрике са TLER омогућењем. Сличне технологије користе Seagate, Samsung и Hitachi. Наравно, за коришћење не-РАИД-а, дискови класе предузећа са кратким прекидом опоравка грешке они не могу да се промене па је стога мање погодан него десктоп диск.

Крајем 2010. године, Smartmontools програм је почео да подржава конфигурацију ATA Error Recovery Control, који омогућава алатки да конфигурише многе десктоп класе тврди дискова за употребу у РАИД.

Сценарији осим квара диска 
Док нас RAID може заштитити од физичког квара диска, подаци су још увек изложени оператору, софтверу, хардверу и уништењима вируса. Многе студије наводе грешку оператера као најчешћи извор квара, као што је да оператор сервера замењује погрешан диск у неисправни RAID, и онемогућава систем (чак привремено) у прецесу.

RAID 5 enterprise окружење 
Обнова RAID 5 низа након квара оптерећује све дискове који раде, зато што свака област на сваком диску, која је обележена као „у упутреби“, мора бити прочитана да би се обновила изгубљена редундантност. Ако су дискови близу квара, оптерећење обнове низа може бити довољно да узрокује квар другог диска пре него што се прецес обнове завршио, шта више ако сервер и даље приступа дисковима да би обезбедио податке за кориснике, клијенте, итд. Чак и без потпуног губитка диска током обнове, непоправљиве грешке читања (URE) су чешће за веће низове, и обично доводе од неуспеле обнове. Тако, током обнове „изгубљеног“ диска цео RAID низ је у опасности од катастрофалног отказа. Обнова низа на заузетим и великим системима може трајати сатима, некада и данима. Стога, није изненађење да, када систем мора бити веома доступан и високо поуздан или толерантан на отказе, други нивои, укључујући RAID 6 или RAID 10, се бирају.

Са RAID 6 низом, коришћење дискова из више извора и произвођача, је могуће да се убалажи већина проблема повезана са RAID 5. Што је већи капацитет диска и што је већи низ, постаје важније изабрати RAID 6 уместо RAID 5. RAID 10 такоће умањује овај проблем.

Августа 2012. године, Dell је објавио савет против употребе RAID 5 или RAID 50 са дисковима великог капацитета и на великим низовима.

Софтверски RAID проблеми 
Ако се boot диск поквари, систем мора бити довољно софистициран да се бутује помоћу преосталог диска или дискова. На пример, размотримо рачунар који се подиже са RAID 1 (пресликани диск); ако се први диск у RAID 1 поквари, онда прва фаза boot учитавача може да не буде довољно софистицирана у покушају да се оптерети друга-фаза boot учитавача са другог диска као резерве. Друга-фаза boot утоваривача за FreeBSD је способна да оптерети кернел са RAID 1.

Види још 
 Стандардни RAID нивои
Нестандардни RAID нивои

Напомене

Референце

Литература

Спољашње везе 

 
 "Empirical Measurements of Disk Failure Rates and Error Rates", by Jim Gray and Catharine van Ingen, December 2005
 The mathematics of RAID-6, by H. Peter Anvin

 
Рачунарски системи отпорни на грешке
RAID ( излишни низ независних дискова ) је технологија складиштења која комбинује више компоненти дискова у логичку јединицу ради редудантности података и побољшања перформанси . Подаци се дистрибуирају преко дискова на један од неколико начина , који се односе на RAID нивое , у зависности од специфичног нивоа редудантности и жељених перформанси . Термин " RAID " је први пут коришћен године од стране David Patterson , Garth A . Gibson и Randy Katz са Универзитета Калифорније ( Беркли ) , који је значио редудантни низ јефтиних дискова . Индустрија RAID произвођача касније је имала тенденцију да интерпретира то као акроним који стоји за редудантни низ независних дискова . RAID се данас користи као општи израз за шеме рачунара који складиште податаке који могу бити подељени и поновљени између више физичких дискова . RAID је пример виртуализације складишта и низу се може приступити помоћу оперативног система као да је један диск . Различите шеме или архитектуре се називају помоћу речи RAID за којом следе бројеви ( нпр . RAID RAID Свака шема обезбеђује различити баланс између кључних делова : поузданост и расположивост , перформансе и капацитет . RAID нивои изнад RAIDобезбеђују заштиту од непоправљиве ( сектор ) грешке у читању , као и од квара целог диска . Историја Norman Ken Ouchi из IBM-а је награђен године U.S. patent092,732 са називом " System for recovering data stored in failed memory unit . " Закључак овог патента описује шта ће се касније назвати RAIDса пуном траком уписа . Овај патент из године такође помиње пресликавање или дуплирање дискова ( касније ће бити назван RAIDи заштиту са посебном парношћу ( касније ће бити назван RAIDбио је пре уметнички у то време . Термин RAID су први пут дефинисали David A . Patterson , Garth A . Gibson и Randy Katz са University of California , Berkeley , године . Они су проучавали могућност коришћења два или више диска који изгледају као један уређај за хост систем и објавили су рад " A Case for Redundant Arrays of Inexpensive Disks ( RAID ) " , јунагодина на SIGMOD конференцији . Стандардни нивои Број стандардних шема је еволуирао . Оне се зову нивои . Првобитно , постојало је пет RAID новоа , али многе варијације се еволуирале – нарочито неколико угњеждених нивоа и многи нестандардни нивои ( углавном власнички ) . RAID нивои и асоцирани формати података су стандардизовани од Storage Networking Industry Association ( SNIA ) у Common RAID Disk Drive Format ( DDF ) стандард : RAID RAIDобухвата стрипинг ( али не паритет или пресликавање ) . Он побољшава перформансе али не доприноси редудантности и не побољшава толеранцију на грешке . Сваки квар диска уништава низ , и вероватноћа расте са повећањем броја дискова у низу . RAID RAIDобухвата пресликавање ( без парности и стрипинга ) . Подаци су идентично написани у два ( или више ) дискова , продукујући на тај начин „ пресликани скуп “ . Захтев читања се сервисира помоћу један од два диска који садрже тражене податке . Ово може да побољша перформансе ако се подаци читају са диска са најмање тражене латенције и ротационе латенције . Насупрот томе , перформансе писања могу бити деградиране , јер оба диска мора да се ажурирају ; тако перформансе писања је одређена споријим од два диска . Низ наставља да ради све , док бар један диск функционише . RAID RAIDобухвата стрипинг на битовском нивоу са посвећеним Хаминговим-кодом парности . Све ротације осовина диска су синхронизоване и подаци су тракасти тако да је сваки секвенцијални бит на другом диску . Хамингов-код парности се израчунава преко одговарајућих битова и складишти се на бар једном паритетном диску . RAID RAIDобухвата стрипинг на бајтовском нивоу са посвећеном парношћу . Све ротације осовина дискова су синхронизоване и подаци су пругасти тако да је сваки секвенцијални бајт на другом диску . Парност се рачуна преко одговарајућих бајтова и складишти се на посвећеном диску парности . Иако имплементација постоји , RAIDсе ретко користи у пракси . RAID RAIDобухвата стрипинг на нивоу блока са посвећеном парношћу . Парност података се складишти на једном посвећеном диску . RAIDје био превасходно коришћен од NetApp , али је сада углавном замењен имплементацијом RAID( RAID-DP ) . RAID RAIDобухвата стрипинг на нивоу блока са дистрибуираном парношћу . Супротно од RAID парност информација је дистрибуирана између дискова . Он захтева да сви дискови сем једног буду оперативни . На квар једног диска , следеће се читање може израчунати из дистрибуиране парности тако да ниједан податак не буде изгубљен . RAIDзахтева најмање три диска . RAID RAIDобухвата стрипинг на нивоу блока са дупло дистрибуираном парношћу . Дупла парност обезбеђује толеранцију на квар од највише два диска . Ово омогућава да веће RAID групе буду практичније , посебно за високо-доступне системе , како дискови високог-капацитета траже више времена да се обнове . Као и код RAID квар једног диска резултује смањењем перформанси целог низа све док се диск не замени . Угнеждени RAID нивои ( RAID1 , и RAID нивои могу бити угнеждени . Види Угнеждени RAID нивои . Поређење Следећа табела омогућава поглед на нека разматрања стандардних RAID нивоа . У сваком случају : Низ ефикасности простора је дат као израз у смислу броја дискова , ; овај израз означава фракциону вредност између нуле и једнице , што представља део збира капацитета дискова који је нама доступан . На пример , ако су три диска повезана у RAID ово даје низ ефикасности простора од тако , ако сваки диск има капацитет одGB , онда низ има укупни капацитет odGB , али капацитет који је тако доступан за складиштење података је самоGB . Вредност грешке низа је дата као израз по броју дискова , ; а вредност квара диска , ( за који се претпоставља да је исти и независтан за сваки диск ) и може се видети као Bernoulli trial . На пример , ако сваки од три диска има вредност квара од током следеће три године , а три диска су повезана у RAID онда ово даје вредност квара низа током следећегодине од : Угнежден ( хибридни ) RAID У почетку је првобитно назван хибридни RAID , па су многи контролери за складиштење дозвољавали угнеждене RAID нивое . Елементи RAID-а могу бити или индивидуални дискови или сам RAID . Међутим , ако је RAID елемент неког другог RAID-а , то је необично да његови елементи сами себи буду RAID . Крајњи RAID је познат као највиши низ . Када је највиши низ RAID( као код RAID0 и RAID0 ) већина продаваца изоставља " + " ( чиме се добија RAIDи RAID респективно ) . RAID1 : тракасти скуп у пресликаном скупу ( минималнодиска ; паран број дискова ) обезбеђује телеранцију квара и побољшава перформансе али повећава комплексност . Главни разлика од RAID0 је та да RAID1 формира секундарни тракасти скуп да би пресликао примарни тракасти скуп . Низ наставља да ради , ако једнан или више дискова откажу , у истом пресликаном скупу , али ако дискови откажу у оба скупа подаци на RAID су изгубљени . RAID0 : ( а.к.а RAIDпресликани скуп у тракастом скупу ( минималнодиска ; паран број дискова ) обезбеђује телеранцију на квар и побољшава перформансе али повећава комплексност . Главана разлика од RAID1 је та да RAID0 прави тракасти скуп из серија пресликаних дискова . Низ може да издржи вишеструки отказ дискова све док не постоји пресликабање које ће да игуби све дискове . RAID парност Многи RAID нивои укључују заштиту шеме од грашке која се зове „ парност “ , широко коришћен метод у информационим технологијама да пружи заштиту од отказа у датом скупу података . Већина користи једноставну НИЛИ парност описану у овом одељку , али RAIDкористи две одвојене парности базиране респективно на сабирању и множењу у посебном Galois Field или Reed–Solomon error correction . Не-стандардни нивои Многе конфигурације су другачије од стандардних бројева RAID нивоа , и многе компаније , организације и групе су направиле су своју не-стандардну конфигурацију , у многим случајевима дизајнирану за специјалне потзребе мале ниша групе . Већина не-стандардинх RAID нивоа је у власништву : Linux MD RAID10 ( RAIDимплементира општи RAID управљач који подразумева стандардни RAIDса два диска , и стандардни RAID0 са четири диска , али може имати било који број дискова , укључујући и непарни број . MD RAIDможе да ради као тракасто и пресликано , чак и са само два диска са f2 распоредом ( пресликан са тракастим читањем , дајући перформанс читања као RAID стандардно Linux софтвер RAIDне чита тракасто , али може да чита паралелно ) Hadoop има RAID систем који генерише парност фајлова помоћу НИЛИовањем трака блока у једном HDFS фајлу . RAID-F , као имплементација у FlexRAID , обезбеђује RAID преко File System . RAID машине у том систему су не-стандардни и имају своју номенклатуру у облику Tx , где је Т стоји за Толеранцију и х репрезентује ниво толеранције . Најпознатија од свих је Tx машина која обезбеђује RAID∞ ( бесконачно ) заштиту података и опоравака . Резервна копија података RAID систем који се користи као секундарно складиште није алтернатива за прављење резервних копија података . У RAID нивоима већим од RAID штити од катастрофалног губитка података узрокованим физичким оштећењем или грешком на једном диску у оквиру низа ( или два диска у , код RAID Међутим , прави систем за резервне копије има друге важне карактеристике као што су могоћност обнове старије верзије података , која је потребна за заштиту против софтверских грешака које пишу нежељене податаке на секундарно складиште , и такође да се обнове од корисничких грешака и малициозних брисања података . RAID може бити поражен од катастрофалног отказа који превазилази његову способност опоравка , и наравно , цео низ је у ризику од физичког оштећења ватром , природних катастрофа и људске силе , док се резервне копије могу чувати ван локације . RAID је такође рањив на отказ контролера зато што није увек могуће да РАИД мигрира на нови , други контолер без губитка података . Имплементација Дистрибуција податак на више дискова може бити реализована или помоћу намењеног компјутерског хардвера или помоћу софтвера . Софтверско решење може бити део оперативног система , или може бити део firmware ( firmware је комбинација постојане меморије и програмског кода и података који су сачувани у њему ) и управљача добијеног са хардверским RAID контролером . RAID базиран на софтверу Имплементације софтверског RAID-а сада омогућавају многи оперативни системи . Софтверски RAID може бити имплеметиран као : Слој који апстрахује више уређаја , чиме обезбеђује један витуелни уређај ( нпр . Linux-ов md ) Више генерички логичан волумен управљања ( обезбеђен са највећим сервер- класификаторским оперативним системима , нпр . Veritas or LVM ) Компоненета система датотека ( нпр . ZFS or Btrfs ) Волумен управљања подршке Сервер класификатор оперативног система обично обезбеђује логично управљање волуменом , који омогућава систему да користи логичне волумене који могу променити величину или могу да буду померени . Често , функције као што су RAID или snapshots су такође подржане . Vinum је логични волумен управљања који подржава RAID RAIDи RAID Vinum је део основне дистрибуције FreeBSD оперативног система , и верзије постоје за NetBSD , OpenBSD , и DragonFly BSD . Solaris SVM подржава RAIDза boot filesystem , и додаје RAIDи RAIDподршку ( и разне комбинације угнежђених ) за дискове података . Linux LVM подржава RAIDи RAID HP's OpenVMS обезбеђује форму RAIDзвану " Volume shadowing " , даје могућност за пресликавање података на удаљеним кластер системима . Подршка систему датотека Неки напредни системи за датотеке су дизајнирани да организују податке директно међу више уређаја за сладиштење ( без потребе помоћи од трећег-парти логичног волуменског управљања ) : ZFS подржава еквиваленте од RAID RAID RAID( RAID Z ) , RAID( RAID Z2 ) и верзију тростуке-парности RAID Z3. Како је увек тракаст преко највишег нивоа vdevs , он подржава еквиваленте0,0 , and0 угнежђених RAID нивоа ( као и тракасти скуп троструке-парности ) али не и друге угнеждене комбинације . ZFS је оригинални систем датотека на Solaris-у и такође је доступан на FreeBSD and Linux . Btrfs подржава RAID RAIDи RAID( RAIDису у развоју ) . Подршка оперативног система Многи оперативни системи обезбеђују основну RAID функционалност независно од волумена управљања : Apple-ов OS X и OS X Server подржавају RAID RAID и RAID0. FreeBSD подржава RAID RAID RAID и RAIDи сва угнеждења преко GEOM модула и ccd . Linux's md подржава RAID RAID RAID RAID RAID и сва угнеждења . Одређено преобликовање / промена величине / операције проширења су такође подржани . Microsoft-ов серверски оперативни систем подржава RAID RAIDи RAID Неки од Microsoft-ових кућних оперативних система подржавају RAID . На пример , Windows XP Professional подржава RAID нивоа поред спеновања више дискова , али само ако се користе динамички дискови и волумени. Windows XP може бити модификован да подржава RAIDи Windowsи Windows Serverпредстављају RAID-као особину која је позната као Storage Spaces , која такође омогућава корисницима да подесе пресликавање , парност или нема редудантности на folder-by-folder основи . NetBSD подржава RAID ипреко његових софтверских имплементација , именованих као RAIDframe . Временом , повећање брзине артикла CPU је било значајно веће него повећање протока диска ; проценат времена домаћег CPU које је потребно да се засити дати број дискова је смањен . На пример , под искоришћењем једног језгра на1 GHz Intel " Core2 " CPU , Linux-ов софтвер RAID подсистем ( md ) верзије6.26 је у стању да израчуна парност информација наGB /s ; међутим , три-диска RAIDниз који користи дискове способне да подрже операцију писања наMB /s само захтева парност да буде израчунат на брзини одMB /s , што захтева ресурсе од преко једног CPU језгра . Firmware / управљачки-основан RAID RAID имплементација на нивоу оперативног система није увек компатибилна са системским boot процесима , и генерално је непрактична за кућну верзију Windows-а ( као што је описано горе ) . Међутим , хардвер RAID контролери су скупи и својствени . Да би попунили ову рупу , јефтини " RAID контролери “ су уведени да не садрже наменски RAID контролер чип , већ једноставно стандардни контролер диска са посебним firmware и управљачем ; током ране фазе старта RAID се реализује помоћу firmware , и када је оперативни систем потпуно учитан , тада управљачи комплетно преузимају контролу . Сходно томе , такви контролери не могу радити када подршка управљача није доступна за главни оперативни систем . Подаци пречишћавања / патрола читања Подаци рибања подразумевају периодично очитавање и проверавање помоћу RAID контролера , укључујући и оне који нису иначе приступни . Ово детектује лоше блокове пре употребе . У неким окружењима , документација се односи на податке рибања као патролно читање . Патролно читање проверава за лоше блокове на сваком складишном уређају у низу , али користи и редудантност низа да опорави лоше блокове на једном диску и да поново додели опорављене податке у резервним копијама на другом месту диска . RAID са полупроводничким дисковима RAID може да оебзбеди сигурност података са полупроводничким дисковима ( SSDs ) без трешкова за цео SSD систем . На пример , брзи SSD може да буде пресликан са механичким диском . За ову конфигурацију која пружа значајну предност у брзини , потребан је одговарајући контролер који користи брзи SSD за опрације читања . Adaptec је ово назвао „ хибридни RAID " , исти термин се некада користи за угнеждени RAID . Слабости Корелација неуспеха У пракси , дикови су често истих година ( са сличним хабањем ) и подлежу истом окружењу . Пошто су многи откази диска због механичких проблема ( који су вероватнији на старијим дисковима ) , то крши те претпоставке ; неуспеси су у ствари статистички повезани . У пракси , шансе да други откаже пре него што се први опорави ( узрокује губитак података ) нису вероватне колико и четири насумична квара . У студијама од око000 дискова , вероватноћа да два диска у истом кластеру откажу у времену од једног сата била је четири пута већа него предвиђена експоненцијална статистичка расподела – која карактерише процесе у којима се догађаји дешавају континуирано и независно при константној просечној брзини . Вероватноћа два неуспеха у распону одсати била је два пута већа од предвићене експоненцијалне дистибуције . Заједничко очекивање је да ће дизајн диска за серверску упетребу ређе отказати него потрошачки-оцењени дискови који се обично користе у кућним рачунарима . Студије Carnegie Mellon University и независно од Google , су утврдиле да „ оцена “ неког диска није повезана са брзином неуспеха тог дика . Непоправљиве грешке читања ( URE ) током обнове Непоправљиве грешке читања презентују се као неуспех на сектору за читање . Брзина непоправљивих битних грешака ( UBE ) је углавном специфициранабит уза ниво дискова у предузећима ( SCSI , FC , SAS ) , ибит уза класу кућних дискова ( IDE / ATA / PATA , SATA ) . Повећање капацитета диска и већа редудантност RAIDгрупа је довала до повећања неспособности да се успешно обнови RAID група после отказа диска зато што се непоправљиви сектор налази на осталим дисковима . Шеме парности такве као RAID када су поправке нарочито склоне UREs ефектима , како оне утичу не само на сектор где се јављају већ такође реконструисани блокови користе тај сектор за израчунавање парности ; типични URE током RAIDобнове доводи до потпуног квара опоравка . Шеме са дуплом заштитом такве као RAIDпокушавају да реше овај проблем , али пате од веома високе казне уписа . Шеме које дуплирају ( пресликавају ) податке као што је RAIDиимају мањи ризик од URE него они који користе рачунање парности . Позадинско пречишћавање меже се користити да се детектује и опорави од UREs ( који су латентни и невидљиво компензовани за динамички од стране RAID контролера ) као позадински процес , помођу реконструкције редудантних RAID података и онда поново напише и поново мапира на нови сектор ; и тако смањи ризик од двоструког отказа RAID система . Време опоравака се повећава Капацитет диска се брже повећавао него брзина преноса , и брзине грешака су само мало пале . Због тога , дисковима великих капацитета требају веше сати , ако не и дана , да се обнове . Време обнове је такође лимитирано ако је цео низ још увек у употреби са самњеним капацитетом . За дати RAID са само једним диском редундансе ( RAIDи други отказ диска узроковао би потпуни отказ низа . Иако се средње време између отказа ( MTBF ) идивидуалних дискова повећало током времена , ово повећање није задржало корак са повећањем капацитета дискова . Време да се обнови низ после једног отказа диска , као и шанса за други отказ приликом обнове , се повећала током времена . Шеме пресликавања као код RAIDимају везано време за опоравак пошто захтевају копију једног диска који је отказао , у поређењу са шемом парности као код RAID који захтева копију свих блокова диска у скупу низа . Трострука шема парности , или троструко пресликавање , је предложено као један приступ за повећање отпорности на додатни отказ диска приликом дугог времена опоравка . Атомистички : укључивање недостатак парности због пада система Пад система или други прекид операције писања може довести до стања где је парности неконзистентна са подацима због не-атомистичког процеса уписивања , тако да се парност не може користити за опоравак у случају квара диска ( такозвана рупа RAIDуписивања – види доле ) . Ово је мало разумљиво и ретко се помиње неуспешни мод за сувишне складишне системе који не користе трансакционе особине . Истраживач базе података Џим Греј је написао „ Ажурирање у Месту је Отровна јабука “ у раним данима комерцијализације базе података . RAID уписина рупа RAID уписина рупа је познат проблем корупције података у старијим и јефтинијим RAID-има , изазван прекидима destaging писања на диску . Поузданост писања кеша Што се тиче постојања поузданости писања кеша , специфично је гледање уређаја који су опремљени са кешом за одложено ажурирање – систем кеширања који пријављује податке као уписане чим се упишу у кеш , за разлику од не-испарљивог медијума . Алгоритам за опоравак грешака диска Често , RAID контролер је подешен да одустане од компоненте диска ( то јест , да претпостави да је дошло до отказа компоненте диска ) ако је диск неодговарајући засекунди или тако ; ово може да узрокује да контролер низа одустане од доброг диска зато што диск није добио довољно времена да заврши свју унутрашњу процедуру за опорављање од грешака . Због тога , десктоп дискови могу бити ризични у RAID-у , а такозвана класа дискова за предузеће лимитира ово време за опоравак од грешке да би самњила тизик. Western Digital-ов desktop дискови користе пецифичне исправке . Корисност која се зове WDTLER.exe ограничавала је време опоравка грешака на диску . Кприсност је омогућио TLER ( временски ограничен опоравак грешке ) , који ограничава време за опоравак грешка досекунди . Септембра године , Western Digital је онемогућио ову функцију у својим десктоп дисковима ( нпр . Caviar Black линија ) , што такве дискове чини неподобним за употребу у RAID . Међутим , Western Digital дискови класе предузећа се испоручују из фабрике са TLER омогућењем . Сличне технологије користе Seagate , Samsung и Hitachi . Наравно , за коришћење не-РАИД-а , дискови класе предузећа са кратким прекидом опоравка грешке они не могу да се промене па је стога мање погодан него десктоп диск . Крајем године , Smartmontools програм је почео да подржава конфигурацију ATA Error Recovery Control , који омогућава алатки да конфигурише многе десктоп класе тврди дискова за употребу у РАИД . Сценарији осим квара диска Док нас RAID може заштитити од физичког квара диска , подаци су још увек изложени оператору , софтверу , хардверу и уништењима вируса . Многе студије наводе грешку оператера као најчешћи извор квара , као што је да оператор сервера замењује погрешан диск у неисправни RAID , и онемогућава систем ( чак привремено ) у прецесу . RAIDenterprise окружење Обнова RAIDниза након квара оптерећује све дискове који раде , зато што свака област на сваком диску , која је обележена као „ у упутреби “ , мора бити прочитана да би се обновила изгубљена редундантност . Ако су дискови близу квара , оптерећење обнове низа може бити довољно да узрокује квар другог диска пре него што се прецес обнове завршио , шта више ако сервер и даље приступа дисковима да би обезбедио податке за кориснике , клијенте , итд . Чак и без потпуног губитка диска током обнове , непоправљиве грешке читања ( URE ) су чешће за веће низове , и обично доводе од неуспеле обнове . Тако , током обнове „ изгубљеног “ диска цео RAID низ је у опасности од катастрофалног отказа . Обнова низа на заузетим и великим системима може трајати сатима , некада и данима . Стога , није изненађење да , када систем мора бити веома доступан и високо поуздан или толерантан на отказе , други нивои , укључујући RAIDили RAID се бирају . Са RAIDнизом , коришћење дискова из више извора и произвођача , је могуће да се убалажи већина проблема повезана са RAID Што је већи капацитет диска и што је већи низ , постаје важније изабрати RAIDуместо RAID RAIDтакоће умањује овај проблем . Августа године , Dell је објавио савет против употребе RAIDили RAIDса дисковима великог капацитета и на великим низовима . Софтверски RAID проблеми Ако се boot диск поквари , систем мора бити довољно софистициран да се бутује помоћу преосталог диска или дискова . На пример , размотримо рачунар који се подиже са RAID( пресликани диск ) ; ако се први диск у RAIDпоквари , онда прва фаза boot учитавача може да не буде довољно софистицирана у покушају да се оптерети друга-фаза boot учитавача са другог диска као резерве . Друга-фаза boot утоваривача за FreeBSD је способна да оптерети кернел са RAID Види још Стандардни RAID нивои Нестандардни RAID нивои Напомене Референце Литература Спољашње везе " Empirical Measurements of Disk Failure Rates and Error Rates " , by Jim Gray and Catharine van Ingen , December The mathematics of RAID-6 , by H . Peter Anvin Рачунарски системи отпорни на грешке