Disková pole v praxi #5 - RAID10-RAID60 Tisk E-mail
Napsal Jan Kořínek   
Saturday, 27 February 2010
altBlíží se nám konec našeho miniseriálku a v jednom z posledních dílů se podíváme na "trhače asfaltu". Řeč bude o složených diskových polích RAID0+1, RAID10, RAID50 a RAID60.

 

 

 

  Proč trhači asfaltu? Možná si vzpomenete v našem prvním díle (zde) na diskové pole/nepole typu RAID0, neboli stripe set. Tohle pole postrádá důležitou vlastnost - redundanci, ale zato poskytuje enormní výkon. Dokonce tak enormní, že to nedalo spát vývojářům a architektům a vytvořili specifikace polí, která nějakým způsobem využívá vlastnost RAID0.

Začneme polem RAID0+1

  Schválně jsem neuvedl zkrácené požadavky, které vedly k tomuto poli, jelikož jsou v podstatě shodné s požadavky na RAID10, ale na rozdíl o poměrně masivně nasazovaného RAID10 jsem RAID0+1 v praxi nikde nepotkal. Výkonostní parametry RAID0+1 a RAID10 jso totiž až do výpadku jednoho z disků shodné.

  Co tedy je RAID0+1? Je to pole složené alespoň ze 4 disků (technicky má význam použití právě 4 disků), kdy je nejprve z disků 1+2 a 3+4 vytvořen RAID0 (dvojnásobná kapacita a dvojnásobná propustnost, velmi často subjektivně poloviční latence) a tyto dvě pole jsou pak vzájemně zrcadleny, tedy je na ně aplikován redundantní RAID1.

 

RAID 0+1 (Zdroj: http://www.raids.co.uk/)

 

  A první trhač asfaltu je na světě. Plnohodnotné pole má totiž využitelnou kapacitu 50% použité diskové kapacity, propustnost zápisu 2x větší s minimálním nárůstem latence při čekání na nejpomalejší disk, propustnost čtení 4x větší! Zápis je "pouze" dvakrát rychlejší, jelikož se identická data zapisují na oba svazky zároveň, nelze tedy zápis urychlit tolik.

Nevýhody ovšem jsou tři, s tím, že poslední může být při dostatečné paranoie pouze relativní:

  1. Při pádu jednoho z disků vám odejte rovnou půlka pole, jelikož druhý disk do páru pro RAID0 použít nelze a spadnete tak na propustnost běžného RAID0 přeživšího páru.

  2. V okamžiku spuštění procesu obnovy musí řadič diskového pole (HW nebo SW) odzrcadlit všechna data z živých dvou disků na oba oživené disky. Zkopíruji tedy celou kapacitu pole a vystavím riziku všechna data vysokou zátěží zbylých disků.

  3. Přidáním další dvojice disků nezískávám kapacitu, ale redundanci. Klesá mi tedy "výtěžnost kapacity", narůstá mi rychlost čtení, ale kapacita nepřekročí dvojnásobek nejmenší použité kapacity jednoho disku.

Tyto nevýhody jsou podle mého důvodem zanedbatelného využití v praxi.

Požaduji maximální rychlost, ale výpadek dat si nemohu dovolit - RAID10

  Tohle pole má myslím nejširší uplatnění v databázových serverech a v dalších aplikacích, požadujících maximální rychlost, ale bez zaplacené ceny rizika výpadku dat. A právě databáze s velikou transakční zátěží musí mít alespoň nějaká úložiště maximálně spolehlivá. Představte si třeba takové měsíční vyúčtování u mobilního operátora. Má miliony účtů, každý z těchto účtů má desítky, stovky ale klidně i tisíce záznamů o hovorech a dalších použitých službách. Každá taková služba se musí ocenit, zaúčtovat a zařadit do detailního výpisu k faktuře. A teď si představte, že tedy uděláte pracně zálohu před takovým cyklem, který běží třeba 2 dny a běží 2x do týdne, aby se všichni zákazníci stihli jednou měsíčně obeslat. Záloha ale taky něco zabere, řekněme, že půl dne. Spustíte běh a v půlce vám spadne jeden disk ve zpracování. Musíte obnovit data, řeknete si možná. No jo, ale co s těmi daty, které od spuštění (celý den běhu) přišly? Zkrátka na tohle spoléhat nejde a vím, že právě mobilní operátoři mají data uložena v reálném čase s redundancí dosahující a přesahující 400% a k tomu ještě počítejte běžné zálohy.

  No zpátky k polím: Někomu z vás už určitě došlo, že toto pole je poskládáno obrácenou logikou, než jeho předchozí bratříček. Ano, je to přesně tak. RAID10 potřebuje sudý počet disků, nejméně však 4. Nejprve se podle pořadí disků v poli vytvoří zrcadla RAID1 a ta se potom spojí do stripe setu RAID0 (z toho tedy RAID10, neboli nejprve RAID1 a pak RAID0).

RAID10 (Zdroj: http://vipserv.org/)

  Tento trhač má tedy vždy 50% využitelné kapacity v porovnání s použitou, čtyřnásobnou rychlost čtení (pokud použijete 4 disky), dvojnásobnou rychlost zápisu (bez ohledu na počet disků) s případným čekáním na nejpomalejší disk. Co je nejdůležitější: V případě pádu jednoho disku mu spadne čtení na trojnásobek základu a zápis zůstává na původní rychlosti! Navíc, pokud si takové pole postavím ze 6, osmi a nebo více disků, kapacita lineárně narůstá a rychlosti také. Představte si tedy výkon enterprise pole o dvou řadičích, na každém 16 SAS disků s rychlostí otáčení 15000 (řadič a disky) a SSD budou tiše závidět, obzvlášť když použijete třeba ty Seagate 600GB a tento trik, kdy využijete jenom nejrychlejší vnější část disku.

  Nevýhoda je zjevná, ale podle mých zkušeností s DB serverů relativně marginální: Může vám odejít až polovina disků, ale nehoda se vždycky musí "trefit" do zatím nezasaženého páru.

Mám dost peněz na hodně disků, ale zase chci slušnou výtěžnost kapacity a dobrou bezpečnost dat - RAID50

  Po předchozí části už si dovolím popis lehce zkrátit. Většina z vás asi tuší, že RAID50 je kombinace RAID5 a RAID0. Ano, je to přesně tak. Nejmenší počet disků je 6. Disků je vždy třeba sudý počet a využitelná kapacita při N discích, kdy N je sudé číslo je N-2/N. Využitelnost tedy asymptoticky stoupá s počtem disků a začíná na 66%.

RAID50 (Zdroj: http://www.kythuatvien.com/)

  Nejběžnější použití jsou i velkých datových skladů, které mají vysokou sekvenční zátěž. Řekněme třeba velká webová farma s mnoha relativně malými soubory a potřebou provozu 24*7: Třeba WAP portál, nebo obrazová banka.

  Nevýhody jsou stejné, jako u RAID5 samotného: V okamžiku pádu disku je nutné chybějící data dopočítávat, ale jelikož je většinou tento typ pole řešen pomocí HW řadiče, zpomalení je obyčejně marginální.

Mám dost peněz na hoooodně disků, chci slušnou výtěžnost kapacity a špičkovou bezpečnost dat - RAID60

  RAID60 je kombinace RAID6 a RAID0. Nejmenší počet disků je 8. Disků je vždy třeba sudý počet a využitelná kapacita při N discích, kdy N je sudé číslo je N-4/N. Využitelnost tedy asymptoticky stoupá s počtem disků a začíná na 50%.

RAID60 (Zdroj: http://upload.wikimedia.org/)

  Nejběžnější použití jsou opět velké datové sklady, ale vzhledem k vyššímu zabezpečení dat pomocí dvojité parity se používá na citlivější data, respektive na data, jejichž ztráta nebo výpadek by byla velmi drahá. Takové pole pak postavíte z mnoha disků (řekněme 12 a více, kdy je využitelnost už slušných 66%), kdy získáte dost slušnou propustnost 10 disků při čtení a 10 disků pro zápis a bezpečnost 2 disků on-line. Takže nejběžnější použití budou transakční úložiště platebních portálů, jejichž výpadek stojí řádově stovky dolarů za minutu na ušlém zisku nebo poškozeném jméně. Opět již jmenovaní telefonní operátoři na B2B kanálech a tak podobně.

  Nevýhody jsou stejné, jako u RAID6 samotného: V okamžiku pádu disku je nutné chybějící data dopočítávat, ale zpomalení je opět marginální ze stejných důvodů. Jako v předchozím případě.

Ukázka profesionálního diskového pole (Zdroj: http://www.ibm.com)

  A na závěr něco pro opravdu mlsné jazýčky: Tohle pole od IBM se jmenuje DS8700 a umí kapacitu od 1.1TB do 1024TB, on-line šifrování dat na vybraných discích, nacpete do něj jak SATA a SAS tak SSD disky (15k o 7200 otáček), umí se geograficky replikovat s jinou takovou potvorou, takže máte dvě vzdálená datacentra s daty ve dvojím a vícerém vydání on-line, pohání jí až 4 POWER6 IBM CPU s 32-384GB pamětí/diskovou cache a nacpete do ní 16-1024 3.5" disků. Navíc se k tomu lze připojit až 32 servery pomocí optických řadičů. No nekuptet to!

No a to máme z běžných polí všechno, příště se koukneme na způsoby opravy některých polí, aneb padlo to, co s tím?

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.

Starší články


Komentáře
Přidat Nový
KoHHHnA [Zobrazit profil] [Poslat zprávu] - Poděkování 2010-02-27 10:52:09
avatar
Zase ti musím poděkovat za poučný článek! Měl bych jeden dotaz, pokud si v domácím PC postavím pole RAID0+1, nebo RAID 10, zvýší se nějak razantně nároky na CPU při práci s disky?
koren [Zobrazit profil] [Poslat zprávu] 2010-02-27 21:10:43
avatar
Jelikož se nepočítá parita, jsou doplňkové nároky na CPU v podstatě neměřitelné.
KoHHHnA [Zobrazit profil] [Poslat zprávu] 2010-02-27 21:57:10
avatar
díky
Xsichtik [Zobrazit profil] [Poslat zprávu] 2010-02-27 10:59:17
avatar
Pěknej článek, už se těším na opravy. :-)
Sephinothf [Zobrazit profil] [Poslat zprávu] 2010-02-27 13:53:58
avatar
Uzasnej serial,.. a sem zvedavej na posledni cast aneb, co kdyz neco kleklo
koren [Zobrazit profil] [Poslat zprávu] 2010-02-27 21:12:01
avatar
Díky oběma. Taky už se těším, až budu mít po zkoušce a napíšu tenhle díl. Už mám v hlavě další námět na obdobné téma: Domácí diskové servery - NAS
galo0 [Zobrazit profil] [Poslat zprávu] 2010-02-27 22:00:57
avatar
Diky moc za clanky. Zaujimalo by ma, ci existuje aj nejake "optimalne" riesenie pre hracov - vysoky vykon + redundancia. Predpokadam ze to bude RAID0+1 alebo RAID10?
koren [Zobrazit profil] [Poslat zprávu] 2010-02-28 12:02:21
avatar
Z důvodů už psaných v článku nedoporučuju RAID0+1, ale RAID10. Jinak ano, pokud chcete opravdu vysoký výkon a nevadí 50% investice do redundance, je RAID10 IMHO správná volba. Navíc nežere ze systémových zdrojů v podstatě nic, takže i klasický BIOS RAID je v pohodě a kompatibilitia s Windows je slušná. Navíc pro opravdové tweakery doporučuji rozdělit vzniklý disk na systémovou a datovou část s tím, že systémová bude na začátku. Tím v podstatě dosáhnete stejného efektu, jaký je popisován tady: Odkaz
Klasické pevné disky totiž mají nejvyšší výkon na vnější straně plotny, tedy na začátku. Rozdělením donutíte Windows, aby fragmentaci disku stále držely v této vykonné části a tak se celkový výkon zvýší. Navíc se výrazně sníží běžný pracovní úhel hlaviček a tak se níží i seek time. Navíc při přeinstalování systému nemusíte přesouvat vaše data.
PanPrcek [Zobrazit profil] [Poslat zprávu] 2010-02-27 21:54:59
avatar
No já se musím připojit, zase dobrý článek :-) Zrovna laboruju s RAID 10, tak se teším na článek o tom když něco klekne
c.Data [Zobrazit profil] [Poslat zprávu] 2010-03-02 06:41:53
avatar
Vážně velice děkuji za poučnou ságu. Konečně to někdo pěkně vysvětlil.
koren [Zobrazit profil] [Poslat zprávu] 2010-03-02 08:29:06
avatar
Díky, jsem rád, že to bylo aspoň trochu srozumitelné.
c.Data [Zobrazit profil] [Poslat zprávu] 2010-03-02 10:22:42
avatar
to určtě bylo...ja se tedy v IT pohybuji už nějakou dobu ale spíše jako amter než-li odborník, dělám sice admina a zaváděl jsem IS, ale vše je způsobem samouk...profesí jsem strojní projektant. Takže tyto články velice oceňuji...
Golux [Zobrazit profil] [Poslat zprávu] - stránkovací soubor 2010-03-19 07:12:36
avatar
Dobrý den , nyní nemám pole a osvědčilo se mi mít stránkovací soubor na jiném fyzickém disku(i když pomalejším) než je systém , a když půjdu do pole + singl HDD ,jestli bude lepší nechat swap na poli nebo ho zas hodit na jiný?
koren [Zobrazit profil] [Poslat zprávu] 2011-07-12 16:49:41
avatar
Zřetelně jsem spíš otčím, než duchovní otec, když nechám dotaz tak dlouho bez odezvy, ale snad to k něčemu někomu ještě bude: Swap file doporučuji mít na redundantním disku. Když totiž klekne single disk, málokdy to ustojí data běžících aplikací a i operační systém obvykle vyhlásí, že je kernel panic. Když Vás ani jedno z toho netrápí, je naopak dedikovaný disk pro swap levné zrychlení, jelikož se hlavičky tolik nehoní z místa na míst. Platí zejména pro Windows.
Pouze registrovaní uživatelé mohou přidat komentář!
 
Poslední příspěvky v diskuzích


Videa
Marvel 1943: Rise of Hydra – využije úžasně vypadající UE 5.3!
Marvel 1943: Rise of Hydra – využije úžasně vypadající UE 5.3!Monday, 25 March 2024
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 452x
Komentářů: 0
Horizon Forbidden West vyšlo na PC – solidní port!
Horizon Forbidden West vyšlo na PC – solidní port!Friday, 22 March 2024
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 1506x
Komentářů: 8
Baldur's Gate 3 se nedočká DLC, datadisku ani pokračování!
Baldur's Gate 3 se nedočká DLC, datadisku ani pokračování!Thursday, 21 March 2024
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 1210x
Komentářů: 1
Alien: Romulus – nový film naváže na klasiku!
Alien: Romulus – nový film naváže na klasiku!Wednesday, 20 March 2024
Vložil: aDDmin
Kategorie: Film
Spuštěno: 1893x
Komentářů: 4
The Acolyte – hraný Star Wars seriál v novém stylu
The Acolyte – hraný Star Wars seriál v novém styluTuesday, 19 March 2024
Vložil: aDDmin
Kategorie: Film
Spuštěno: 1147x
Komentářů: 0
Far Cry slaví 20 let! Také si přijdete staří?
Far Cry slaví 20 let! Také si přijdete staří?Thursday, 14 March 2024
Vložil: aDDmin
Kategorie: Počítačové hry
Spuštěno: 1905x
Komentářů: 3