Uitleg RAID Niveaus

RAID-0

RAID-0 (ook bekend als striping); een aantal schijven wordt in een array geplaatst en benaderd als één grote schijf. De gegevens worden in kleine (enige tientallen kilobyte) blokken (ook wel 'stripes' genoemd) verdeeld en om en om op de verschillende schijven weggeschreven. Hiermee wordt een snelheidsverhoging bereikt omdat meerdere schijven tegelijkertijd gegevens kunnen ophalen of wegschrijven.

Theoretisch zou de snelheidsverhoging recht evenredig kunnen zijn met het aantal schijven, in de praktijk wordt dit echter meestal niet bereikt. RAID-0 biedt geen foutcorrectie. De term 'redundant' is hier dan eigenlijk ook niet van toepassing. Als één schijf uitvalt dan zijn alle gegevens van de hele array verloren! De (qua capaciteit) kleinste schijf in de array bepaalt de omvang van alle RAID-systemen. Als bijvoorbeeld een 50 GB-, 100 GB- en een 250 GB-schijf in een RAID-0 array worden gezet, dan zal de controller aan de pc een schijf aanbieden van 150 GB (50 GB × 3). Hierbij gaat bij veel controllers dus effectief 250 GB verloren.

Sommige controllers kunnen echter de overblijvende ruimte nog gebruiken voor een andere RAID-set. Software RAID-0 wordt ook wel aangeduid als Volume Sets. Hierbij is echter niet altijd sprake van striping op blokniveau, maar worden directory's en de daarin aanwezige bestanden door het filesysteem op die schijf binnen de Volume Set geplaatst die op dat moment de meeste vrije ruimte heeft.  

RAID-1

RAID-1 (ook bekend als mirroring) slaat de data twee (of meer) keren op op verschillende schijven. Als een schijf uitvalt zal het computersysteem hier geen hinder van hebben en gewoon blijven werken. De controller zal dan alle I/O laten lopen over de andere schijf (of schijven). De controller zal de gebruiker natuurlijk wel een hint geven dat er iets fout is - maar het systeem werkt gewoon door.

Als de defecte schijf wordt vervangen zal de inhoud van de goede schijf teruggeschreven worden op de nieuwe. Hoewel RAID-1 de minst efficiënte manier van databeveiliging is en voor conventionele SCSI RAID-systemen een tamelijk dure oplossing is, biedt dit voor IDE-oplossingen een simpele maar erg betrouwbare oplossing als het om veiligheid van de data gaat. Als er 1-op-1 mirroring toegepast wordt met twee 160 GB-schijven, dan zal het systeem maar 1 schijf ter grootte van 160 GB zien. Ook hier is de kleinste schijf bepalend voor de uiteindelijke opslagcapaciteit van het gehele RAID-systeem. Voor de pc is de logische schijf zo groot als de kleinste schijf uit de set. 

NB: Bij gebruik van RAID-1 met twee schijven als Master en Slave op één enkele IDE poort kan het gebeuren dat de defecte schijf de hele IDE bus ophangt, en dat de andere schijf daardoor ook niet meer bruikbaar is. Hoewel het systeem wel weer zal werken zodra de defecte schijf verwijderd is biedt dit niet de betrouwbaarheid die van RAID-1 verwacht mag worden. Naast de mirroring versie van RAID-1 is er ook een duplexing versie. Waar bij mirroring de schijven alle aangesloten zijn op een enkele controller, worden de schijven bij duplexing aangesloten op verschillende controllers.  

RAID-2

RAID-2 gebruikt parallel datatransport (zie ook striping bij RAID-0) aangevuld met een zogenaamde Hamming Error Correction Code (ECC), bedoeld voor schijven die geen eigen foutcorrectie hebben. Alle moderne harde schijven hebben tegenwoordig wel een ingebouwde foutcorrectie. Omdat bij gebruik van een Hammingcode extra bits worden toegevoegd, heeft men meer dan 1 schijf nodig voor de opslag van deze code. Deze RAID-variant heeft geen voordelen ten opzichte van RAID-3.  

RAID-3

RAID-3 werkt bijna hetzelfde als RAID-2 met het verschil dat men een aparte schijf gebruikt voor het opslaan van een berekende pariteit voor de Hamming Error Correct Code. Ook hier wordt parallel gewerkt zoals we dat bij striping in RAID-0 zagen. De pariteit wordt per setje bytes (A0, A1 en A2) berekend en opgeslagen. Als een disk uitvalt, kan men terug berekenen wat de verloren byte had moeten zijn. Door deze pariteitsdata kan een RAID-3-systeem echter vaak niet gelijktijdig schrijven en lezen.  

RAID-4

RAID-4 is identiek aan RAID-3 maar nu wordt de pariteit niet per byte maar per datablok (stripe) berekend. Een dergelijk datablok is bijvoorbeeld 32 of 64 kilobyte groot. Hierdoor kan gelijktijdig geschreven en gelezen worden mits er geen overlapping plaats vindt. Wel is het zo dat de schijf die voor de pariteit gebruikt wordt, voor iedere schrijfactie aangesproken moet worden en dus een snelheidsbeperkende factor is.  

RAID-5

RAID 5 werkt identiek aan RAID-4, met het verschil dat de pariteitblokken niet op een enkele schijf opgeslagen worden maar verdeeld over de schijven in de array. Hierdoor geldt het nadeel van de pariteitsschijf die de snelheid beperkt dus niet meer. In de praktijk wordt RAID-5 dan ook vaak toegepast in tegenstelling tot de andere RAID-varianten met pariteit.  

RAID-6

RAID 6 is te vergelijken met RAID 5 maar gebruikt twee pariteitsblokken die verdeeld worden over alle schijven. De effectief bruikbare ruimte neemt dan ook met twee schijven af. De pariteitsberekening is veel complexer dan voor RAID 5, en is alleen op een beperkt aantal RAID-controllers beschikbaar. Hiermee kunnen dan wel twee willekeurige schijven falen.  

Combinaties

RAID-configuraties kunnen ook in combinaties voorkomen, waarmee sommige van de nadelen van specifieke oplossingen verminderd worden. Zo kan RAID 0 en 1 gecombineerd worden tot RAID 10 (zie afbeelding), waarmee met minimaal 4 schijven de snelheid van RAID 0 en de betrouwbaarheid van RAID 1 gecombineerd worden. Ook RAID 5 wordt gecombineerd met RAID 0 in RAID 50 voor extra snelheid, of met RAID 1 in RAID 51 voor extra betrouwbaarheid.

Bron: wikipedia.nl

Zie ook: Duidelijke Nederlandstalige uitleg en afbeeldingen

Google
WEB
www.storagegroup.nl