You are on page 1of 5

Bevezets

Ezen dokumentumot a Budapesti Mszaki Egyetem Informatikus hallgati


szmra hozta ltre Fk Mrk, 1999. novemberben. Az anyagot
vltozatlan formban adjuk kzre, clunk mindssze az ignyes
sszefoglal bemutatsa minden olvasnknak.
A RAID (Redundand Array of Independent/Inexpensive Disks) technolgit
a Kaliforniai Egyetem (University of California) kutati 1987-ben publikltk
elszr, azta szleskren elterjedt (pl. Linux is tmogatja). A RAID
technolgia lnyege, hogy tbb fggetlen merevlemez sszekapcsolsval
egy nagyobb mret logikai diszket hoznak ltre. A mdszer
kifejlesztsekor a tervezk tbbfle clt tztek ki maguk el:

Nagy kapacitsok kezelse, azaz a logikai diszk az egyes fizikai diszkek mrett jval
meghaladhatja
Teljestmnynvels, azaz az sszekapcsolt diszkek egyttes teljestmnye (rsi-,
olvassi sebessg) meghaladja az egyes diszkek teljestmnyt.
Hibatrs, azaz az egyes diszkek meghibsodsval szembeni tolerancia.

A fenti clok a klnbz alkalmazsok ltal tmasztott ignyek


kielgtst tzik ki. Itt egyrszt adatbzis-kezelsre (pl. repltri
helyfoglals, bankszmla nyilvntarts, stb...) kell gondolnunk, ahol eleve
sok adattblt kell kezelni, illetve az egyes tblkon bell esetenknt igen
nagyszm rekord tallhat. Ezen applikcinl cl a gyors elrs
biztostsa (lehetleg minl tbb lekrdezst, mdostst lehessen adott
id alatt vgrehajtani), msrszt a hibavdelem, azaz pldul egy
esetleges diszkhiba esetn is tovbb kell tudni mkdnie a rendszernek. A
msik tipikus alkalmazscsoport, az Internetes adattvitel (pl. FTP
szerverek), ahol nagymennyisg adat trolst kell megoldani. Ezenkvl
fontos mg a kiadvnyszerkeszts, s a grafika-, illetve vide-editls, ahol
nagymennyisg kp, illetve vide anyagok minl gyorsabb kezelst kell
biztostani.
A RAID-ben eredetileg 5 szintet (RAID1-tl RAID5-ig) definiltak. Az egyes
szintek ltalban nem a fejldsi, illetve minsgi sorrendet tkrzik,
hanem egyszeren klnbz megoldsokat javasolnak. A kezdeti 5
szinthez ksbb hozzvettk a RAID 6-ot. RAID 0-knt szoktk emlegetni
azt a vltozatot, ahol a diszkeket redundancia nlkl kapcsoljuk ssze.
Ezenkvl hasznljak mg a RAID 10, vagy RAID 1+0 elnevezseket is,
amelyek a RAID 1 s a RAID 0 kombinlsval hoznak ltre. Hasonlan a
RAID 50 a RAID 5 s a RAID 0 kombincija. A RAID alaptlete a
lemezegysgek svokra (stripes) bontsa. Az itteni svok nem azonosak a
lemez fizikai svjaival (tracks), amit az angol elnevezs klnbzsge is
jelez.

1. bra: Svokra bonts ngy meghajt esetn

A svok minden diszken egyforma mretek, amely 512 bjttl nhny


megabjtig terjedhet. Az adatok nem folytonosan troldnak egy-egy
diszken, hanem az egymst kvet svok mindig a sorban round-robin
mdon kvetkez diszkre kerlnek, mint ahogy azt ngy meghajt esetn
a fenti bra is mutatja. A svok mretnek megvlasztsa az alkalmazstl
fgg. Adatbzisok esetn gy kell a svmretet megvlasztani, hogy egy
rekord frjen el egy svon bell, gy a klnbz diszkeken lv rekordok
prhuzamosan egyszerre elrhetv (rsi/olvassi mveletekkor) vlnak,
felgyorstvn a rendszer teljestmnyt. Nagymret fjlok tvitele esetn
viszont a svok mrett minl kisebbre kell lltani, hogy az egyes fjlok a
diszkeken mintegy "sztkenve" helyezkedjenek el, gy a fjlok klnbz
diszkeken lv egyes darabjainak rsa, illetve olvassa prhuzamosan
trtnhet.
RAID tpusok
RAID 0
A RAID 0 alkalmazza az egyes lemezegysgek svokra bontst, viszont
semmilyen plusz redundancit nem visz a rendszerbe, gy nem biztost
hibatrst, azaz egyetlen meghajt meghibsodsa az egsz rendszer
hibjt okozza. Mind az rsi, mind az olvassi mveletek prhuzamostva
trtnnek. A mdszer az sszes RAID eljrs kzl a legjobb teljestmnyt
nyjtja, ugyanis a tbbi mdszernl a redundancia kezelse (mint majd
ltni fogjuk) lasstja a rendszert. A trkihasznls a redundancia hinya
miatt szintn hatkony.
RAID 1
A RAID 1 eljrs alapja az adatok dupliklt trolsa, azaz tkrzse (disk
mirroring). Az eltroland informci mindig prhuzamosan kt meghajtn
kerl felrsra, amely meghajtprost a szmtgp egy szimpla kapacits
logikai meghajtnak lt. Az adatok olvassa prhuzamosan trtnik a kt
diszkrl, felgyorstvn az olvassi teljestmnyt. Az rs norml
sebessggel, prhuzamosan trtnik a kt meghajtn. Az eljrs igen j
hibavdelmet biztost, brmely meghajt meghibsodsa esetn
folytatdhat a mkds. Ezen nagymrtk hibatolerancia ra a ktszeres
trolkapacits-felhasznls. A RAID 1 nmagban nem hasznlja a
svokra bonts mdszert. A RAID 0 meghajtit RAID 1 megkettztt
meghajtkkal helyettestve kapjuk a kombinlt RAID 10-et.
RAID 2
A RAID 2 hasznlja a svokra bonts mdszert, emellett egyes

meghajtkat hibajavt kd (ECC: Error Correcting Code) trolsra


tartanak fenn (A hibajavt kd lnyege, hogy az adatbitekbl valamilyen
matematikai mvelet segtsgvel redundns biteket kpeznek. A hasznlt
eljrstl fggen a kapott kd akr tbb bithiba szlelsre, illetve
javtsra (ez utbbi persze tbb redundancit ignyel) alkalmas. A
vdelem ra a megnvekedett adatmennyisg.). Ezen meghajtk egy-egy
svjban a klnbz diszkeken azonos pozciban elhelyezked svokbl
kpzett hibajavt kdot trolnak. A mdszer esetleges diszkhiba esetn
kpes annak detektlsra, illetve kijavtsra. Manapsg nem hasznljk,
mivel a (SCSI) meghajtkban mr minden egyes szektorban az adott
szektorhoz tartoz ECC is eltrolsra kerl.

2. bra: RAID2 hrom adat s kt hibajavt meghajt esetn

RAID 3
A RAID 3 felptse hasonlt a RAID 2-re, viszont nem teljes hibajavt kd,
hanem csak egy diszknyi paritsinformci kerl eltrolsra. Egy adott
paritssv a klnbz diszkeken azonos pozciban elhelyezked svokbl
XOR mvelet segtsgvel kaphat meg. A rendszerben egy meghajt
kiesse nem okoz problmt, mivel a rajta lv informci a tbbi
meghajt (a paritst trol meghajtt is belertve) XOR-aknt
megkaphat. Az alapvet klnbsg a RAID 2-ben alkalmazott hibajavt
kddal szemben, hogy itt feltesszk, hogy a meghajt meghibsodst
valamilyen mdn (pl. tbbszri sikertelen olvass hatsra) szleljk,
majd a meghibsodott diszken lv informcit a tbbi diszken lv adatok
segtsgvel lltjuk el. A RAID 2 a diszkhibk ellen is vdelmet nyjt, pl.
egyes bjtok megsrlse esetn (Vegyk szre, hogy csak az XOR-os
paritsbit technikt hasznlva az egyik meghajtn egy adott bjt
megsrlse esetn, csak azt vennnk szre, hogy a klnbz
meghajtkon az azonos svba tartoz rszek XOR-a nem nullt adna, de
nem tudnnk sem azt, hogy melyik meghajtn van a hiba, sem azt, hogy
hogyan javtsuk ki. Ezrt van szksg a szektoronknti hibajavt kd
alkalmazsra.).

3. bra: RAID 3, illetve RAID 4 hrom norml s egy parits meghajt esetn

A RAID 3-nl kismret svokat definilnak, gy az egyes fjlok olvassa s


rsa prhuzamosan trtnhet ( Termszetesen a paritssvot minden
egyes rskor mdostani kell, amihez szksges a korbbi tartalom
kiolvassa. Viszont pldul fjltranszfer esetn, pont a kismret svok
miatt, az azonos pozciban lv svok ltalban az sszes diszken
fellrsra kerlnek, gy ez esetben a problma kevsb jelentkezik.) az
egyes meghajtkon, viszont a mdszer nem tmogatja egyszerre tbb
krs prhuzamos kiszolglst (single-user mode).
RAID 4
A RAID 4 felptse a RAID 3-mal megegyez. Az egyetlen klnbsg, hogy
itt nagymret svokat definilnak, gy egy rekord egy meghajtn
helyezkedik el, lehetv tve egyszerre tbb (klnbz meghajtkon
elhelyezked) rekord prhuzamos rst, illetve olvasst (multi-user
mode). Problmt okoz viszont, hogy a parits meghajt adott svjt
minden egyes rskor frissteni kell (plusz egy olvass s rs), aminek
kvetkeztben prhuzamos rskor a parits meghajt a rendszer szk
keresztmetszetv (bottleneck) vlik. Ezenkvl valamely meghajt kiesse
esetn a rendszer olvassi teljestmnye is lecskken, a parits meghajt
jelentette szk keresztmetszet miatt.
RAID 5
A RAID 5 a parits informcit nem egy kitntetett meghajtn, hanem,
krbeforg parits (rotating parity) hasznlatval, egyenletesen az sszes
meghajtn elosztva trolja, kikszblvn a parits meghajt jelentette
szk keresztmetszetet. Mind az rs, mind az olvass mveletek
prhuzamosan vgezhetek. A svmret vltoztathat; kismret svok
esetn a RAID 3-hoz hasonl mkdst, mg nagymret svok
alkalmazsa esetn a RAID 4-nek megfelel mkdst kapunk.
RAID 6
A RAID 6 tekinthet a RAID 5 kibvtsnek. Itt nemcsak soronknt, hanem
oszloponknt is kiszmtjk a paritst. A mdszer segtsgvel ktszeres
meghajt meghibsods is kikszblhetv vlik. A paritssvokat itt is
az egyes meghajtk kztt, egyenletesen elosztva troljk, de ezek
termszetesen ktszer annyi helyet foglalnak el, mint a RAID 5 esetben.

4. bra: RAID 5 megvalstsa t meghajt esetn

Hasznlat s megvalsts
Hasznlat
Az ismertetett RAID technikk kzl a RAID 0-t, RAID 1-et s RAID 5-t
hasznljk elterjedten, illetve az ezek kombincijaknt megvalstott
RAID 10-et s RAID 50-et. A RAID 2-t a mr korbban emltett okok, mg a
RAID 3-at s RAID 4-et a parits meghajt jelentette szk keresztmetszet
miatt nem alkalmazzk. A RAID 6 megvalstsa tl sok tbbletkltsget
jelent, illetve az ltala nyjtott tbblet biztonsg csak specilis
alkalmazsok estben szksges, ezrt hasznlata nem terjedt el.
Megvalsts
A RAID rendszerek megvalstsa trtnhet szoftver, illetve hardver
tmogatssal. Szoftveres megvalsts esetn vagy az opercis rendszer
nyjt tmogatst, vagy specilis driver programot hasznlnak. A
megvalsts elnye, hogy nem ignyel kln kltsges hardver
komponenseket, viszont htrnya, hogy a kzponti memrit, illetve a
CPU-t terheli, lerontvn az egsz rendszer teljestmnyt. Hardveres
megvalsts esetn a szksges feldolgozst a RAID vezrl valstja
meg, ezltal az opercis rendszer teljestmnye nem cskken le. A
kezels bonyolultsga miatt a RAID 5-t a gyakorlatban csak hardver
tmogatssal valstjk meg.
Forrsok
Praveen Ramanathan: RAID - Technology that's here to stay
DPT: Understanding RAID
DPT: Benefits of Intelligent Hardware RAID and Caching
Linas Vepstas: Software-RAID HOWTO
Az anyagot sszelltotta: Fk Mrk, 1999. novemberben.

You might also like