RAID står for enten Redundant Array of Inexpensive Disks eller Redundant Array of Independent Disks. Det er en virtualiseringsløsning for datalagring som behandler flere fysiske stasjoner som en enkelt fysisk stasjon. Formålet med RAID er å gi dataredundans, ytelsesforbedringer eller begge deler avhengig av RAID-nivået som brukes.
RAID-konsepter
De tre hovedkonseptene i RAID er "speiling", "striping" og "paritet".
I RAID, speiling er replikering av data på tvers av flere disker, dette tillater et nivå av redundans på bekostning av redusert lagringskapasitet. For eksempel, hvis en stasjon feiler, går ingen data tapt, ettersom alle dataene på den mislykkede stasjonen også er på en annen stasjon. På dette tidspunktet kan den defekte stasjonen erstattes og RAID-arrayen kan bygges opp igjen fra eksisterende stasjoner.
PLYNDRINGSTOKT striping er konseptet med å spre data over flere stasjoner. Dette gjør at full kapasitet til alle stasjoner er tilgjengelig for bruk og gir bedre ytelse ettersom data skrives til eller leses fra flere stasjoner samtidig. Ulempen med dette er at tapet av en stasjon ødelegger hele arrayet.
PLYNDRINGSTOKT paritet er en feiltoleranseprosess som utfører en logisk prosess mellom hver bit på to stasjoner og lagrer resultatet på en tredje stasjon. Hvis noen av stasjonene feiler, kan arrayet bygges opp igjen fra de to andre. Paritet kan bare legges til på toppen av andre raid-stater.
Vanlige RAID-nivåer
RAID 0 er en enkel implementering av striping. To eller flere disker er inkludert i arrayet, som kombinerer deres samlede kapasitet og lese-/skrivehastigheter. Dette raid-nivået tilbyr høy ytelse, men med risiko for tap av all data hvis en stasjon svikter. Ytelsen til et RAID 0-array øker etter hvert som du legger til flere stasjoner, men dette øker også sannsynligheten for at en av stasjonene svikter og ødelegger hele arrayen.
Tips: RAID 0 er forskjellig fra bare å spenne over flere disker sammen. Begge teknikkene tillater bruk av full kapasitet til stasjonene. Å spenne diskene sammen gir ikke ytelsesøkningen som kommer fra striping av data, men det bevarer dataene som er lagret på fungerende disker hvis en spennede disk svikter.
RAID 1 er en implementering av speiling, med data fra en stasjon speilvendt til en annen stasjon. Hvis en av stasjonene feiler, går ingen data tapt. I større matriser inneholder hver disk fortsatt nøyaktig den samme informasjonen. Så lenge én RAID 1-disk fungerer, kan dataene leses og arrayet gjenoppbygges.
RAID-nivå 4 og 5 bruker striping for å øke ytelsen, men inkluderer også paritet for å tillate stasjonsfeil. RAID 4 dedikerer en enkelt stasjon til paritet, dette kan føre til reduserte skrivehastigheter ettersom alle paritetsdata bare blir skrevet til én disk. RAID 5 sprer paritetsdataene over alle stasjonene i arrayet. Flaskehalsen som kom fra å skrive paritetsdata til én disk er fjernet, men paritetsbehandlingen må fortsatt utføres, noe som reduserer ytelsen litt sammenlignet med RAID 0. RAID-nivå 4 og 5 krever begge minst tre stasjoner i arrayet og tillater bare at en enkelt stasjon svikter.
RAID 6 er identisk med RAID 5, men lagrer to paritetsblokker på tvers av alle diskene i arrayet. Denne ekstra pariteten dobler paritetsbehandlingen som kreves, og reduserer dermed ytelsen mer enn RAID 5, men fortsatt mindre enn RAID 4. RAID 6 krever minst fire stasjoner i arrayet, men kan håndtere opptil to stasjoner som svikter.
RAID 0+1 er nestet RAID-array, det oppretter først en RAID 0-array av stripede disker, deretter et RAID 1-speil av den matrisen. Nesting av disse to typene RAID-arrayer gir både redundansen til speilingen og hastighetsøkningen til stripingen. Ulempene med denne metoden er at det kreves minst fire stasjoner, og at hvis en stasjon svikter, svikter et helt speil. Hvis en stasjon feiler, ødelegger den RAID 0-arrayen. I en RAID 0+1-array med fire disker, ville tap av en enkelt disk ødelegge den sammenkoblede disken og etterlate de to andre diskene uten beskyttelse av et speil.
RAID 10 er en annen type nestet RAID-array, den lager en RAID 1-array med speilede disker, deretter en RAID 0-stripe av den arrayen. Nesting av arrayene på denne måten gir også samme redundans og ytelsesøkning som RAID 0+1. Med denne implementeringen kan du imidlertid miste mange stasjoner så lenge hvert speil har minst én fungerende disk. Det tar også mindre tid å gjenoppbygge matrisen i tilfelle en stasjonsfeil, da bare ett sett med speilvendte stasjoner må bygges om.