RAID


Vzhledem k tomu, že pevný disk je složité zařízení kombinující elektroniku a jemnou mechaniku, je již ze svého principu náchylný k poruše. Toto je nepříjemné zejména u serverů, kde jednak cena uložených dat může představovat mnohamilionové částky, jednak - i při pravidelném zálohování - jen odstávka serveru spojená s opravou a obnovou dat představuje značnou ztrátu na prostojích mnoha uživatelů. Proto byla zkonstruována disková pole, kde se pomocí speciálního řadiče více disků fyzických navenek jeví jako jeden disk logický. Dalším důvodem použití pole je vytvoření větší diskové kapacity, než se vyrábí v podobě samostatného disku. Pole se ve zkratce nazývají RAID. Nejprve to znamenalo Redundant Array of Inexpensive Disks, dnes se zkratka překládá spíše jako Redundant Array of Independent Disks. Pro vyjasnění terminologie byly definovány tzv. úrovně RAID. Některé se s vývojem techniky již přestaly používat. V současné době jsou nejpoužívanější úrovně RAID 0, 1, 5. Kombinací typu 0 a 1 vznikne pole typu RAID 10, popřípadě různou kombinací jednotlivých typů RAID vzniknou pole typu 3, 4, 6, 30, 50, 51, 53, 60, 100. V poslední době se začínají používat zmíněná pole typu RAID 6 (zdvojená parita).

Raid 0

Především je třeba řici, že toto pole není redundantní. Ztráta jednoho disku znamená ztrátu celého pole. Důvodem použití je výkon, tedy zvýšení přenosové rychlosti nebo propustnosti dat tam, kde na uchování dat nezáleží tak, jako na rychlosti, například při stříhání videa.

Raid 1
Je známé “zrcadlení”, kdy se na dva disky stejných kapacit ukládají totožné informace a při výpadku jednoho disku se bez přerušení pokračuje v činnosti. Jednoduchá implementace, často čistě softwarová, zato je potřeba 100% diskové kapacity navíc. Z hlediska výkonu pomalejší zápis (zapisuje se 2x), rychlejší čtení (řadič může střídat požadavky mezi disky, “rozdávat práci”).

Raid 5
Redundantní pole s distribuovanou paritou. Minimální počet disků jsou 3. Režie je 1 disk z n-diskového pole. Máme-li například pole RAID 5 z 5 disků o kapacitě 36 GB, užitečná kapacita je 4x36=144 GB a 1 disk je režie. Data se zapisují postupně na disky 0,1... až na poslední disk se zapíše parita. Při výpadku některého disku pak máme buď všechna data (a nepotřebujeme paritu), nebo máme část dat a paritu a chybějící data ze ztraceného disku umíme dopočítat z dat, která máme a parity. Výkon při čtení dobrý, zápis je pomalejší (jeden zápis je čtení starých dat, čtení staré parity, výpočet nové parity a zápis nových dat a nové parity). RAID 5, což je pole, kde data jsou distribuovány mezi tři disky (minimálně), přičemž kapacita pole je rovna součtu dvou disků. Zbytková kapacita je využita pro kontrolní součty operace eXclusive-OR (exkluzivní nebo), která je vypočítána takto:

Při poruše jednoho z disků je možné zpětně dopočítat, jaká data obsahoval. Pokud například víme, že jedna z hodnot je 0 a druhá 1 (nezávisle na pořadí), je jasné, že třetí hodnota musí být 1 (0 XOR 1 = 1). Logická operace XOR prováděná na několikabajtovém rozsahu je jednoduchá, umí jí spočítat každý procesor - 486ka jí zvládne za jeden hodinový cyklus, při frekvenci 50 MHz tedy v ideálním případě zvládne 50 milionů těchto operací za vteřinu. Problémem ovšem je, že 1. potřebujete onen procesor na výpočet XOR a 2. potřebujete alespoň tři disky. Tyto důvody zapříčinily, že RAID 5 z levných diskových řadičů podporuje málokterý.

Raid 6
Pole typu RAID 5 ještě s jedním paritním diskem navíc. Je odolné proti výpadku dvou disků. Důvodem použití je ta skutečnost, že při obrovských kapacitách dnešních disků trvá rekonstrukce pole při výpadku disku dosti dlouho, a po dobu rekonstrukce již pole není chráněno proti výpadku dalšího disku. Navíc se u RAID 5 může stát, že právě při rekonstrukci, kdy se kvůli rekonstrukci chybějících dat čtou kompletní povrchy všech zbývajících disků pole, se na nekterém z těchto disků narazí na chybu čtení, která se dosud v provozu nemusela projevit, řadič takový disk taktéž odpojí a neštěstí je hotovo - úplná ztráta dat celého pole.  

Raid 10
Kombinace RAID 0 (stripe) a RAID 1 (zrcadlo). Jedná se vlastně o zrcadlený stripe. Minimální počet disků 4, režie 100% diskové kapacity navíc. Poskytuje nejvyšší výkon v bezpečných typech polí, podstatně rychlejší než RAID 5 zejména při zápisu. Další výhodou je odolnost proti ztrátě až 50% disků (naproti tomu RAID 5 odolává ztrátě pouze jednoho disku).  

Hot-spare
Pro aplikace, kde je velmi důležitá nepřetržitost provozu, se používá technologie hot-spare. Ze čtyř disků například vytvoříme pole RAID 5 (jeho užitečná kapacita je tedy 3xkapacita disku). Pátý disk je zasunut a zkonfigurován jako hot-spare, což znamená, že v případě výpadku jednoho z disků pole je okamžitě automaticky aktivován a jsou na něj dopočítána chybějící data za vypadlý disk. Tak je minimalizováno rizikové časové okno, kdy pole sice funguje, ale výpadek dalšího disku již znamená ztrátu všech dat pole, protože není třeba čekat na příjezd technika a výměnu disku. Disk Hot-spare je možno sdílet pro více polí - jsou-li v serveru například 2 pole, jedno ze tří disků a jedno z pěti, je disk hot-spare aktivován při výpadku jak disku z prvního tak druhého pole.