Faktblad

 

Raid  (Redundant Array Of Inexpensive Disks)

Av: Johan Futsæther.

Oppdatert  04.05.01

 

Raid er en lagringsteknikk. Raid brukes der sikkerhet, pålitelighet, oppetid og ytelse er viktig. Typisk vil være servere. Prinsippet er å sette flere harddisker (vanligvis SCSI) i parallell slik at systemet oppfatter dem som én disk. Ved skriving til diskene deler raidcontrolleren opp bitstrømmen i flere synkroniserte bitstrømmer. En for hver disk. Dette kalles ”striping”. Ved lesing leser raidcontrolleren fra alle harddisker og multiplekser signalene til ett signal. Hvis hver harddisk leverer data i en datamengde på x MBps, så vil controlleren teoretisk kunne levere datamengden: x MBps * antall harddisker. Vi slipper å vente den tid det tar for lesehodet å bevege seg til riktig posisjon, fordi denne tiden brukes til å lese en annen harddisk i systemet.

 

Vi deler opp Raid i 6 ”nivåer”, det vil si 6 måter å organisere data på. Hver av disse har sine fordeler og ulemper. Det er også mulig å kombinere de seks ”nivåene”, men det vil ikke bli tatt opp her.

 

Prinsippskisser.

 

Raid 0

 

 

Raid 0 (figur 1) fokuserer på ytelse og ikke på sikkerhet og pålitelighet. Data fra diskene leses i rekkefølgen A, B, C, D / E, F, G, H, osv. Den tid det tar for lesehodet å fysisk bevege seg til neste spor faller bort fordi systemet bruker tiden til å lese fra en annen disk. Dermed har vi fått økt yte-evne til systemet. Ytelseøkningen kan beregnes ved å ta ytelsen fra én hardisk og gange opp med antall harddisker du har i systemet.

 

Raid 1.

 

 

Raid 1 (figur 2) fokuserer på driftsikkerhet og ikke på ytelse.

Raid bruker disker i par. Hvert par består av harddisker med identiske data. Det foregår en ”speiling”. Hvis en av diskene feiler, tar den andre over. Siden diskene er på samme ”buss”, kan det ta lenger tid å lagre data enn ett system med bare én disk. Litt avhengig av operativsystem og hvordan raidcontrolleren er satt opp, kan raid 1 lese hurtigere enn et system med bare en disk. Dette kommer av at controlleren leser fra flere disker samtidig

 

 

Raid 2.

(Brukes ikke i praksis)

 

 

Raid 2 (figur 3) fokuserer på driftsikkerhet. Raid 2 bruker en, eller flere, dedikerte disker for error corection code (ECC). Når det skrives til systemet skrives det i sekvensen A til D osv.

For hver sekvens lages det en errorkorreksjons-kode som legges inn i ECC-disken Dette ser ut som en kombinasjon av økt ytelse og driftsikkerhet, men er det ikke.  Raid 2 blir ikke brukt fordi:

 

a)                   Diskene må synkroniseres. Det tar tid.

b)                   Mye ”overhead”.

c)                   Ved små dataoverføringer vil ikke raid 2 ha bedre ytelse enn et system av bare én harddisk, pga. tiden er                   bestemt av forsinkelsen i å finne data.

 

Raid 3

 

                  

 

 

Raid 3 (figur 3) er i prinsippet likt raid 2 (se dette), men bruker en enklere korreksjonskode, nemlig paritet. Dette gir følgende fordeler.:

 

a)                   Mindre overhead gir økt ytelse.

b)                   Skriving foregår i én operasjon.

c)                   Paritet beregnes og skrives ved lagring, sjekkes ved lesing.

d)                   Mye aktivitet på paritetsdisk som kan redusere ytelsen på systemet.

 

Hvis en av diskene svikter, kan data rekonstrueres vha. paritetsdisken. Det er mulig å skifte disk uten å ta ned systemet. (Hot-swap)

 

Raid 4.

(Brukes ikke i praksis )

 

 

Raid 4 (figur 5) ser ut som raid 3, men på raid 4 er data lagret i sector-rekkefølge. Dette gir effektiv lagringsegenskaper, med meget hurtig lagring av store datablokker. Raid 4 krever ikke synkronisering av spindelhastigheten fordi at det er lett å mellomlagre (”buffre”) sectorer og skrive dem ut uavhengig til alle disker . Mange uavhengige skrivinger betyr at I/O-prosessen foregår i parallell, som igjen betyr at  også skriving av små blokker blir raskere. En ulempe er at det blir mye skriving til paritetsdisken. Den kan da bli en flaskehals i systemet.

 

Raid 5

 

                  

 

Raid 5 (figur 6) er det samme som raid 4, men med den forskjell at istedenfor å dedikere en egen harddisk til paritet, så deles paritetene mellom alle harddiskene sammen med data. Går en disk ned, så kan denne bare skiftes og systemet vil automatisk gjenopprette de originale data på grunnlag av paritetene på de andre diskene. Det kan sågar være mulig å skifte disk uten å stoppe systemet. (Hot-swap)

 

1.        God drifts-sikkerhet.

2.        Håndterer store og små datablokker.

3.        Trenger ikke synkronisering.

 

Raid 5 egner seg godt til databaseservere

 

Tabelloversikt.

 

Nivå

Fordeler

Ulemper

Bruksområder

Raid 0

Fig. 1

Meget høy ytelse. Lett å implementere

Ingen feiltoleranse. Svikter en disk= tap av alle data.

Videoredigering, bilde-behandling, appl. ed krav om høy båndbredde.

 

 

 

 

Raid 1

Fig. 2

Speiling gir dobbel lesehastighet og samme skrivehastighet. Enkel å implementere. 100% redundans betyr at gjenoppbygning av data ikke er nødvendig. Data kopieres til den  nye disken

Dyrt. Lagringskostnadene er dobbel så høy som ved enkeltstående disker, siden du må ha ’en disk for speiling pr. datadisk. Kan implementeres både ved maskin og programvareløsninger, men sistnevnte støtter ofte ikke ”hot-swap” av defekte disker.

Applikasjoner hvor høy graf av sikkerhet er nødvendig

Raid 2

Fig. 3

 

 

Ikke i bruk.

 

 

Raid 3

Fig. 4

Svært høy ytelse for lesning og skriving. Feil på én disk har liten innvirkning på totalytelsen

Komplekst kontrolldesign

Benyttes lite. Videoredigering, video-on-demand-løsninger, billedbehandling, applikasjoner som krever høy båndbredde og god datasikkerhet

Raid 4

Fig. 5

 

 

Ikke i bruk.

 

 

Raid 5

Fig. 6

Svært høy ytelse for lesing, middels ved skriving, Høy tilgjengelighet, en feil vil ikke føre til systemkrasj. Den beste Raid-løsningen for de fleste formål hvor både høy grad av datasikkerhet og høy ytelse er nødvendig

Komplekst kontrolldesign, kan være dyrere å implementere enn enkelte andre raid-nivåer

Fil, applikasjons-, web-og databasetjenere. Intranett-tjenere, e-post. Tjener osv.

 

Kilder: PC-world nr. 6, 1999,  PC Upgrade and Repair,  Diverse artikler.