RAID
A Unix/Linux szerverek üzemeltetése wikiből
A lap korábbi változatát látod, amilyen KornAndras (vitalap | szerkesztései) 2006. szeptember 27., 11:23-kor történt szerkesztése után volt.
Redundant Array of Inexpensive/Independent Disks.
Tartalomjegyzék |
1 Mire jó?
- Sok kis diszk helyett egy nagyot látunk
- Ami ráadásul gyorsabb is
- És megbízhatóbb is
- És jobb esetben működés közben cserélhető
- Egy diszk MTFF-je 200000 óra is lehet
- Akkor 100 diszké 2000 óra (kb. két és fél hónap)
2 Megvalósítás típusai
- Hardware
- Drága vezérlő
- Software
- pl. Linux md
- Windows dynamic disk (?)
- Hibrid
- Olcsó alaplapok "RAID"-vezérlői
3 RAID szintek
- Két ortogonális fogalom:
- Csíkozás (striping) a nagyobb teljesítmény, és
- Redundancia (redundancy) a nagyobb megbízhatóság érdekében.
- Másfelől: nagy, megbízható, gyors - ebből választhatunk kettőt (vagy legalábbis az egyik kicsit mindig háttérbe szorul a másik kettő javára)
- Csíkozás:
- Lehet finom vagy durva
- Rövidebb sorbanállás független I/O műveletek esetén
- Nagyobb effektív átviteli sebesség egyetlen, több-blokkos I/O művelet esetén
- Csökkenti a megbízhatóságot: 10 diszkből egy várhatóan pontosan tizedannyi idő alatt romlik el, mint egyből egy
- Redundancia:
- Milyen hibadetektáló/-javító kódot használ? (általában paritás, ritkábban Hamming vagy Reed-Solomon)
- Hogyan osszuk el a redundáns információt a több diszk között?
- Koncentráltan
- Szétterítve
3.1 RAID0
- Nincs redundancia, csak csíkozás
- A legjobb írási sebesség (nem kell kódokat számolgatni és frissíteni)
- A RAID1 tudhat gyorsabban olvasni (több diszken is megvan ugyanaz az adat, tehát olvashatunk arról, amelyik várhatóan a leghamarabb odaér)
- Egy diszk kiesése után a tömb "használhatatlan"
3.2 RAID1
- Az adatokat nem 1, hanem n>1 diszken tároljuk
- A tömbhöz tartozhat melegtartalék is (hotspare); erre nem íródnak az adatok, amíg éles diszk ki nem esik
- Ha 8 diszkünk van, akkor 4 kapacitása hasznosul
- Bármelyik kieshet, és a tömb még működik
- Ha szerencsénk van, akár 4 is kieshet, és még működik, de ez már nem garantált
3.3 RAID2
- Hamming kódos
- 4 adatdiszkhez 3 paritásdiszk kell, de a paritásdiszkek száma az adatdiszkek logaritmusával arányos
- A fenti hétből egy eshet ki, négy kapacitása hasznosul
- Nemigen használják
3.4 RAID3
- A memóriahibákkal ellentétben a diszkek esetében pontosan tudjuk, melyik a rossz, tehát nem kell a Hamming-kód, találhatunk jobbat
- n adatdiszkhez 1 paritásdiszk tartozik
- Minden írás minden diszket érint
- Az olvasásban csak az adatdiszkek vesznek részt
- Pontosan egy diszk eshet ki
- Nemigen használják
3.5 RAID4
- Mint a RAID3, de nem bitenként használja az egyes diszkeket, hanem blokkonként (striping unit, esetleg stride size).
- Blokkméret alatti írási műveleteknél read-modify-write van:
- a többi diszkről is be kell olvasni az adott paritásblokkhoz tartozó adatokat
- újra kiszámolni a paritást
- kiírni a módosított adatot és az új paritást
- Mivel csak egy paritásdiszk van, és azt az összes írás érinti, szűk keresztmetszet lehet
- Itt is pontosan egy diszk eshet ki
- Nemigen használják
3.6 RAID5
- Mint a RAID4, de a paritás is el van osztva
- n diszk esetén minden diszken minden n-edik blokk paritásblokk
- n+1 diszkből itt is n-nek a kapacitását hasznosítjuk
- Minden diszk részt vehet az olvasási műveletek kiszolgálásában
- Kis olvasás, nagy olvasás, nagy írás gyors; kis írás relatív lassú
- Pontosan egy eshet ki
- Széles körben elterjedt
3.7 RAID6
- Reed-Solomon
- n+2 diszk kell n diszknyi kapacitáshoz
- Bármely két diszk kieshet
- Amúgy olyan, mint a RAID5; a kis írás még egy kicsit lassúbb
- Terjedőben
3.8 RAID1+0
- RAID10-nek is hívják, de "van" "valódi" RAID10 is
- Két (vagy több) RAID1 tömböt csíkozással összefűzünk
3.9 RAID0+1
- Mint fent, de két RAID0-tömböt tükrözünk egymásra RAID1-gyel
3.10 RAID10
- Elvileg egy RAID1+0-jellegű hibrid megoldás
- Egy komplex tömb, nem két egymásra épített
- Így aztán lehet az egésznek egy hotspare-je, ami bármelyik diszk kiesése esetén beállhat
- A Linux kernel támogatja
4 Ajánlott irodalom
- Peter M. Chen, Edward K. Lee, Garth A. Gibson, Randy H. Katz, David A. Patterson: "RAID: High-Performance, Reliable Secondary Storage", ACM Computing Surveys (CSUR), Volume 26, Issue 2 (June 1994), pp. 145-185, ISSN 0360-0300
- Van benne szép ábra is, nem akar esetleg valaki hasonlót rajzolni nekünk?
- Ugyanez a cikk HTML-ként