Posledně jsme se brouzdali historií, dnes se koukneme na nejčastější jednoduchá pole: RAID0, JBOD a RAID1.
Dost tedy bylo historického okénka, pojďme se spolu podívat na
nejjednodušší disková pole, která můžete začít používat už od dvou
disků. Není to jediný důvod, proč je nazývám jednoduchá. Na jejich
realizaci totiž není zapotřebí ani nijak vysoká výpočetní síla.
Začneme prvním požadavkem: Chci především rychlost a když něco selže, obnovím data ze zálohy (RAID0)
Tohle pole vlastně není plnohodnotným RAID polem, chybí mu totiž
základní vlastnost RAID: redundance. Když si vytvoříte pole typu RAID0,
které se také někdy nazývá stripe set a v češtině asi nejspíš sada
datových pruhů, a jakýkoliv z disků v tomto poli klekne, máte po
datech. Tečka. Hotovo. Dokážete zrekonstruovat maximálně fragmenty a to
ještě značně pracným způsobem, kdy se nevyhnete nízkoúrovňové práci s
editorem disků. Rozhodně tedy nepoužívejte tento typ, pokud Vám jde o
spolehlivost uložení dat. Proč tedy vůbec tohle pole použít? Především
kvůli rychlosti. Schéma ukládání dat v RAID0
Principem tohoto pole je totiž rovnoměrné rozložení zátěže na tolik
disků, kolik jich jen do pole zařadíte. Aby to bylo zřejmé, řekněme, že
máte v počítači 4 pevné disky a pracujete s videostřižnou (to je
mimochodem asi nejtypičtější užití RAID0). Tím pádem máte originál
filmu v HD kameře připojeném přes FireWire a pro co nejefektivnější
práci potřebujete co nejrychlejší disky, na kterých pracujete s lokální
kopií. Sám střihový předpis má pár kB, ale shlédnutí části a ladění
střihu vyžaduje neustále hledání pozice, přehrávání a zase hledání.
Máte tedy 4 oddíly na disku takždý řekněme 50GB velký a ty spojíte
do RAID0. Výsledná kapacita je 200GB. Při úvodní konfiguraci zadáte
něco, co se bude nejspíš jmenovat chunk size nebo stripe size. V tento
okamžik zadáváte hlavní a vyjma počtu disků také jediný parametr RAID0.
Tento chunk/stripe size (v češtine asi nejspíš velikost proužku) určuje
velikost dat, které se zapíší na jeden disk, než se přejde na další.
Zadáte-li chunk size třeba 256kB a zapisujete soubor o velikosti 2,75MB
na RAID0 pole ze 4 disků A B C D, zapíše se na disk A 256kB, na disk B
také a tak dál až na disk D, tím se uložil první megabyte a jdeme
zpátky na disk A, tohle celé se opakuje, až skončíme v jakémsi třetím
patře na disku C (ABCD - 1.MB, ABCD - 2.MB, ABC - 2,75MB. Máte-li tedy
disky s ustáleným datovým tokem 75MB/s pro čtení. Vytvořením RADI0 jste
rázem za velmi slušný peníz získali čtení 300MB/s. Stejná kalkulace
samozřejěm platí i pro zápis. Zkrátka jste získali v podstatě lineárně
zvýšený čtyřnásobný výkon. Jestliže používáte SATA disky, nejspíš Vám
právě přestala stíhat sběrnice, ale střih běží, jako nikdy předtím. Takový podomácku vyřešený RAID :)
Je důležité si i uvědomit, že limitem pro Vás nebude skoro u žádného
disku přímo SATA sběrnice, ale PCI nebo PCIe. Máte-li externí diskový
řadič na PCIe 1x, víc jak dva disky vám na plno nejspíš jen stěží
utáhne.
Zároveň je ale samozřejmě jasné, že v případě pádu jednoho disku
nezbývá, než rekonstruovat tři čtvrtiny dat. V situaci, kdy mi chybí
každých čtvrtých 256kB je práce pro skutečně odhodlaného zachránce dat. RAID0 je možné realizovat jen na stejně velkých oddílech a nebo
discích, pokud nějaký disk/oddíl přečuhuje, použije se velikost menšího
jako základ. Stejně tak se nepoužije konec disku/oddílu, pokud se tam
nevejde celý chunk.
Rychlost, rychlost a zase rychlost je tedy hlavní výhodou RAID0 a
nepoužívejte to nikde, kde Vám na datech záleží. Nicméně, jak vidíte u
střižny, své uplatnění to najde. S odkazem na první díl, nenasazoval
bych to na celý disk, což v podstatě nutně vyžaduje softwareové diskové
pole, nebo dedikovanou n-tici disků přes HW řadič. Za zmínku rovněž
stojí i to, že výpočetně je toto pole velmi levné. Nikoliv nejlevnější,
ale stejně. Kdybyste hledali třeba další možné požití, dovedu si
představit dva databázové stroje s ultimátně rychlými disky na bázi
RAID0, které jsou na sebe na úrovni DB stroje replikovány a tak máte
zajištěnu redundanci na vyšší úrovni a těžíte maximálně z výkonu disků.
Druhým požadavkem je: Chci především kapacitu a když něco selže, oželím jednu n-tinu, a případně obnovím data ze zálohy (JBOD)
Druhé pole je z hlediska spolehlivosti podobné, jako RAID0, ale při
pádu jednoho z disků není situace přeci jen až tak strašně fatální.
Zkratka JBOD totiž velmi dobře vystihuje princip tohoto pole: Just a
Bunch Of Disks (jen hromada disků). Data se zapisují na první disk,
když se zaplní, tak na další a tak dále, až se zaplní celé JBOD pole.
Jak sami vidíte, pokud jeden disk padne, data jsou sice ohrožena a na
disk se standardně nedostanete, ale když už nic, data jsou aspoň
zapsána pěkně za sebou, takže kromě mezního překryvu na hranicích disků
a samozřejmě padlého disku máte pořád slušnou šanci data zachránit. JBOD je možné realizovat na libovolně velkých oddílech a nebo
discích, pokud nějaký disk/oddíl přečuhuje, nevadí, naváže se, až dojde
prostor. Schéma ukládání dat v JBOD
Výhodou je, že data jsou přeci jen pohromadě a získáte extrémně
veliký prostor za nepatrnou cenu z hlediska CPU. Nevýhodou je, že při
lineárním čtení máte pořád propustnost jen jednoho disku. Nicméně
pěkným příkladem použití by mohlo být nějaké zrcadlo webdisku alá
Sunsite na MFF UK s mnoha zrcadly Linuxových distribucí, open source
projektů a dalších dat, která existují na mnoha dalších serverech. Na
data víceméně rovnoměrně přistupují uživatelé, takže propustnost je
srovnatelná s RAID0, prostor je ultimátně veliký. A když to třeba někdy
klekne, no tak dotáhnem data znovu, no!
Třetím požadavkem už je spolehlivost: Chci mít jistotu, že mě padlý disk neohrozí, ale nechci moc investovat (RAID1)
Tady už se dostáváme konečně ke zvýšené spolehlivosti a to nikoliv
zanedbatelně. Řekněme, že máte 0.33% pravděpodobnosti, že Vám tento
měsíc jeden disk klekne (mimochodem, to jsem si až tak úplně z palce
nevycucal, jelikož některé disky mají v prvních 12 měsících provozu
poruchovost 4%). Pokud ale máte byť i jen ze dvou disků vytvořen RAID1,
tak už se dostáváte na pravděpodobnost 0,001089%, že přijdete o data. S
tím se spí pravda o něco klidněji, že?
Jak tedy RAID1 funguje? No, hodně napoví jeho lidštější jméno:
mirror/zrcadlo. Použijeme příklad se dvěma disky. Pokud přijde
požadavek na uložení dat, ovladač diskového pole vrátí systému zprávu o
úspěšném uložení až poté, co dostane potvrzení od obou disků v poli.
Pokud některý z disků vyhlásí problém, ovladač ho odepíše, data mu už
nesvěří, ale vy je máte na druhém disku nebo oddíle. RAID1 je možné realizovat jen na stejně velkých oddílech a nebo
discích, pokud nějaký disk/oddíl přečuhuje, použije se velikost menšího
jako základ. Schéma ukládání v RAID1
Primární výhoda je jasná: spolehlivost za velmi dobrou cenu. Zápis
je o trohu pomalejší vzhledem k dodatečné režii ovladače pole a navíc
je rychlý jako nejpomalejší disk, ale u slušně napsaného ovladače
získáte další výhodu, která není až tak zřejmá. Řekli jsme si, že se
data zapisují v podstatě současně na oba disky. Z hlediska obsahu dat
jsou tedy disky rovnocenné a číst tedy můžu z libovolného disku. Mám-li
data uložena, je to jedno, odkud čtu, nemám-li data ještě uložena, dám
je rovnou z paměti. Pro RAID1 tedy platí mírně pomalejší zápis, až
dvakrát rychlejší čtení! A schválně se koukněte, jak je na tom s
poměrem čtení/zápis právě Váš počítač. S polem typu RAID1 máte šanci
získat třeba i desítky procent výkonu navíc a ještě máte data uložena
velmi spolehlivým způsobem. Krásné RAID řešení externích disketových mechanik dá dohromady více než 10MB paměti! :)
Nevýhodou ovšem samozřejmě je, že data ukládáte na tolik disků,
kolik jich je v RAID1 nastaveno, a tak fyzicky využijete jen jednu
n-tinu z instalované diskové kapacity. U tří disků tedy získáte pár
tisícin procenta jistoty navíc za cenu celého disku nebo kapacity
daného oddílu.
No a příště si řádně pošpitáme o polích, která sice nejsou
oslnivě rychlá, ale zato nabízí slušnou využitelnou kapacitu za cenu
malého navýšení instalované kapacity (RAID3, 4, 5, 6). Zdroj obrázků: http://cs.wikipedia.org/wiki/RAID
AUTOR: Jan Kořínek |
---|
V IT jsem už 18 let a z toho jsem posledních 5 let vedl webhostingovou divizi. V tuto chvíli už působím jen jako externí konzultant - specialista na Linux, počítačové sítě a bezpečnost.
A jelikož si od IT odpočívám, otevřeli jsme si se ženou kavárničku. |
|