We bespreken hier de RAID versies die een pariteitsblok berekenen. |
-
De gebruikte kleurkodes
|
RAID-2, RAID-3 en RAID-4
RAID-2 gebruikt stripes op bit-niveau en gebruikt een Hamming kode waardoor een bitfout automatisch gecorrigeerd kan worden. Een datablok wordt simultaan op alle schijven van de array geschreven. RAID-2 gebruikt normaal 7 schijven, 4 voor data en 3 voor pariteit met foutcorrectie. Tegenwoordig hebben de harde schijven een ingebouwde foutcorrectie gebaseerd op de Hammingkode, waardoor deze RAID obsolete geworden is. RAID-3 gebruikt stripes op byte-niveau en één schijf bevat de pariteit. Om het systeem voldoende snel te maken moeten de schijven synchroon draaien (lockstep mode), dit is trouwens ook het geval bij RAID-2. Deze RAID is goed geschikt voor grote sekwentiële opdrachten. RAID-4 gebruikt stripes op blok-niveau, daardoor vervalt de eis dat de drives synchroon zouden draaien. De pariteitsschijf dat bij iedere schrijfoperatie aangesproken wordt is het vertragende faktor.
De pariteitsblokken zorgen ervoor dat de ontbrekende data gereconstrueerd kan worden, maar daarvoor moet het RAID-systeem weten dat een schijf defekt is. Zolang het systeem correct werkt worden de pariteitsblokken nooit gelezen (enkel geschreven). Deze detectie gebeurt automatisch door de RAID controller: van zodra een schijf er te lang over doet om een antwoord te geven op een lees-opdracht, wordt die als defekt aangezien door de controller. Bij RAID-2 gebeurt de foutcorrectie automatisch dankzij de Hamming kode. |
RAID-5
RAID-5 wordt vaak toegepast. Gegevens worden hier eveneens in stripes gesneden, die ieder op een opeenvolgende schijf geplaatst worden. In dit opzicht komt RAID-5 overeen met RAID-0. Om de zoveel stripes wordt een parateitsblok geschreven.
Deze werkwijze is ideaal bij het lezen van grote bestanden omdat meerdere schijven afwisselend hun gegevens doorsturen (een beetje zoals RAID-0). De snelheidswinst is echter niet zo hoog als bij RAID-0 want de pariteitsblok wordt niet gebruikt tijdens normaal bedrijf. Schrijven verloopt minstens dubbel zo traag als het werken met losse schijven (geen raid) wegens het berekenen en schrijven van de pariteit (kleine writes). Bij iedere schrijfopdracht van één blok (of minder) moet de pariteitsblok berekend en geschreven worden (lezen van alle blokken in de set, berekenen van de pariteit en schrijven van de pariteitsblok). Bij defekt van één schijf blijft het systeem verder werken. Voor RAID-5 heb je minstens 3 harde schijven nodig. RAID-5 wordt vaak gebruikt in systemen waarbij de gegevens vaak gelezen en weinig geschreven worden (eigenlijk 99% van de toepassingen!)
|
RAID-6
RAID-6 is de opvolger van RAID-5 en gebruikt twee pariteitsblokken en kan dus het uitvallen van twee harde schijven opvangen. Wordt enkel in high-end systemen toegepast wegens de duurdere RAID-controller.
De reden voor het gebruik van twee reserve schijven is eenvoudig: de schijven in een systeem werken continu en vertonen dezelfde slijtage. Als één schijf uitvalt is de kans groot dat andere schijven zullen volgen. Daarbij komt nog dat het reconstrueren van de data bij het vervangen van een defekte schijf tijd in beslag neemt (hoe hoger de capaciteit van de schijf, hoe langer het duurt om een nieuwe lege schijf te integreren in de RAID). De capaciteit van harde schijven wordt alsmaar groter, maar de schrijfsnelheid neemt slechts marginaal toe. Tijdens de reconstructie van een RAID-5 systeem (waarbij het systeem normaal blijft werken), is het systeem extra gevoelig voor storingen (als een tweede schijf defekt gaat dan is de volledige raid verloren). Hoe meer schijven in het RAID-systeem zitten, hoe groter de kans dat een tweede exemplaar defekt zal gaan vooraller de eerste gereconstrueerd is. Bij RAID 6 mag een tweede schijf defekt gaan zonder dataverlies (het systeem werkt dan "zonder vangnet" totdat één schijf gereconstrueerd is). |
Publicités - Reklame