RAID is een oplossing die oorspronkelijk is ontwikkeld voor de netwerkservermarkt als middel om grote opslag te creëren tegen lagere kosten. In wezen zou het meerdere, goedkopere harde schijven vereisen en ze samenvoegen via een controller om een drive met een grotere capaciteit te bieden. Dit is waar RAID voor staat: redundante reeks goedkope schijven of schijven. Om dit te bereiken waren gespecialiseerde software en controllers nodig om de gegevens te beheren die worden opgesplitst tussen de verschillende schijven.
Uiteindelijk zorgde de verwerkingskracht van uw standaard computersysteem ervoor dat de functies hun weg konden vinden naar de pc-markt.
Nu kan RAID-opslag software- of hardware-gebaseerd zijn en voor drie verschillende doeleinden worden gebruikt. Deze omvatten capaciteit, beveiliging en prestaties. Capaciteit is een eenvoudige die typisch is betrokken bij bijna elk type RAID-opstelling dat wordt gebruikt. Twee harde schijven kunnen bijvoorbeeld aan elkaar worden gekoppeld als een enkele schijf naar het besturingssysteem, waardoor een virtuele schijf wordt gemaakt die tweemaal zoveel capaciteit heeft. Prestaties zijn een andere belangrijke reden voor het gebruik van een RAID-installatie op een pc. In hetzelfde voorbeeld van twee schijven die worden gebruikt als een enkele schijf, kan de controller een gegevensblok in twee delen splitsen en vervolgens elk van die onderdelen op een afzonderlijke schijf plaatsen. Dit verdubbelt effectief de prestaties van het schrijven of lezen van de gegevens op het opslagsysteem. Ten slotte kan RAID worden gebruikt voor gegevensbeveiliging.
Dit wordt gedaan door een deel van de ruimte op de schijven te gebruiken om in feite de gegevens te klonen die naar beide schijven zijn geschreven. Nogmaals, met twee schijven kunnen we ervoor zorgen dat de gegevens naar beide schijven worden geschreven. Dus als een schijf faalt, heeft de andere nog steeds de gegevens.
Afhankelijk van de doelen van de opslagarray die u voor uw computersysteem wilt samenstellen, gebruikt u een van de verschillende niveaus van RAID om deze drie doelen te bereiken.
Voor degenen die gebruikmaken van harde schijven op hun computer, gaat het waarschijnlijk meer om prestaties dan om capaciteit. Aan de andere kant zullen degenen die Solid State-schijven gebruiken waarschijnlijk een manier willen hebben om de kleinere schijven te nemen en ze aan elkaar te koppelen om een grotere schijf te maken. Laten we daarom eens kijken naar de verschillende niveaus van RAID die kunnen worden gebruikt met een personal computer.
RAID 0
Dit is het laagste niveau van de RAID en biedt in feite geen enkele vorm van redundantie. Daarom wordt deze naar een niveau 0 verwezen. In wezen neemt RAID 0 twee of meer schijven in beslag en plaatst deze samen om een drive met grotere capaciteit te creëren. Dit wordt bereikt door een processor genaamd striping. Gegevensblokken worden onderverdeeld in gegevensbrokjes en vervolgens in de juiste volgorde over de schijven geschreven. Dit biedt betere prestaties omdat de gegevens tegelijkertijd door de controller op de schijven kunnen worden geschreven, waardoor de snelheid van de schijven effectief wordt vermenigvuldigd. Hieronder ziet u een voorbeeld van hoe dit over drie schijven zou kunnen werken:
Rijd 1 | Drive 2 | Drive 3 | |
---|---|---|---|
Blok 1 | 1 | 2 | 3 |
Blok 2 | 4 | 5 | 6 |
Blok 3 | 7 | 8 | 9 |
Om ervoor te zorgen dat RAID 0 effectief werkt voor het verbeteren van de prestaties van het systeem, moet u proberen gematchte schijven te hebben. Elke schijf moet dezelfde exacte opslagcapaciteit en uitvoeringen hebben. Als dat niet het geval is, wordt de capaciteit beperkt tot een veelvoud van de kleinste schijfeenheden en wordt de prestatie tot de langzaamste van de schijven uitgevoerd, omdat moet worden gewacht totdat alle strepen zijn geschreven voordat naar de volgende reeks wordt overgeschakeld. Het is mogelijk om niet-overeenkomende schijven te gebruiken, maar in dat geval kan een JBOD-configuratie effectiever zijn. JBOD staat voor slechts een aantal schijven en is feitelijk slechts een verzameling schijven die onafhankelijk van elkaar kunnen worden benaderd, maar als een enkele opslagschijf voor het besturingssysteem worden weergegeven. Dit wordt meestal bereikt door de gegevensomvang tussen stations te houden. Vaak wordt dit SPAN of BIG genoemd. In feite ziet de bediening ze allemaal als een enkele schijf, maar de blokken worden over de eerste schijf geschreven totdat deze vol raakt, en gaan vervolgens naar de tweede, dan de derde, enz. Dit is handig voor het toevoegen van extra capaciteit aan een bestaand computersysteem en met drives van verschillende groottes, maar het verhoogt de prestaties van de drive-array niet. Het grootste probleem met RAID 0 en JBOD-instellingen is gegevensbeveiliging. Omdat je meerdere schijven hebt, is de kans op corruptie van gegevens groter omdat je meer faalpunten hebt. Als een schijf in een RAID 0-array faalt, worden alle gegevens ontoegankelijk. In een JBOD resulteert een schijfstoring in het verlies van gegevens die zich op dat station bevonden. Dientengevolge is het het beste voor degenen die deze opslagmethode willen gebruiken om op een andere manier een back-up van hun gegevens te maken. Dit is een eerste echt niveau van RAID omdat het een volledig niveau van redundantie biedt voor de gegevens die in de array zijn opgeslagen. Dit gebeurt via een proces dat mirroring wordt genoemd. Effectief worden alle gegevens die naar het systeem zijn geschreven gekopieerd naar elke schijf in een niveau 1-array. Deze vorm van RAID wordt meestal gedaan met slechts een paar schijven, omdat het toevoegen van meer schijven geen extra capaciteit toevoegt, alleen meer redundantie. Om hier een voorbeeld van te geven, is hier een diagram dat laat zien hoe het naar twee schijven zou worden geschreven: Om optimaal gebruik te maken van een RAID 1-installatie, zal het systeem opnieuw aangepaste schijven gebruiken die dezelfde capaciteit en prestatieniveaus hebben. Als er niet-overeenkomende schijfeenheden worden gebruikt, is de arraycapaciteit gelijk aan de schijf met de kleinste capaciteit in de array. Als een anderhalf terabyte- en een terabyte-station bijvoorbeeld in een RAID 1-array zouden worden gebruikt, zou de capaciteit van deze array op het systeem slechts één terabyte zijn. Dit niveau van RAID is zeer effectief voor gegevensbeveiliging omdat de twee schijven in feite hetzelfde zijn. Als een van de twee schijven faalt, heeft de andere de volledige gegevens van de andere. Het probleem met dit type installatie bepaalt in het algemeen welke van de schijven is mislukt, omdat vaak de opslag ontoegankelijk wordt wanneer een van de twee defect raakt en niet correct wordt hersteld totdat een nieuwe schijf wordt geplaatst in plaats van de mislukte en een herstel proces wordt uitgevoerd. Zoals eerder vermeld, is er ook helemaal geen prestatiewinst. In feite zal er een klein prestatieverlies zijn van de overhead van de controller voor de RAID. Dit is een ietwat gecompliceerde combinatie van zowel de RAID-niveaus 0 als niveau 1. Effectief zal de controller een minimum van vier schijven nodig hebben om in deze modus te kunnen werken, want wat het gaat doen is twee paar schijven maken. De eerste reeks schijven is een gespiegelde array die de gegevens tussen de klonen kloont. De tweede reeks schijven is ook gespiegeld maar is ingesteld om de eerste reeks te zijn. Dit biedt zowel de gegevensredundantie als prestatiewinsten. Hieronder ziet u een voorbeeld van hoe gegevens over vier schijven worden geschreven met behulp van dit type installatie: Om eerlijk te zijn, dit is geen wenselijke RAID-modus om op een computersysteem te draaien. Hoewel het wel enige prestatieverbetering biedt, is het echt niet zo goed vanwege de enorme hoeveelheid overhead op het systeem. Bovendien is het een enorme verspilling van ruimte omdat de drive-array slechts de helft van de capaciteit van alle drives samen zal gebruiken. Als er niet-overeenkomende schijven worden gebruikt, worden de prestaties beperkt tot de langzaamste schijfeenheden en is de capaciteit slechts het dubbele van de kleinste schijfeenheid. Dit is het hoogste niveau van RAID dat te vinden is in consumentencomputersystemen en is een veel effectievere methode om de capaciteit en redundantie te vergroten. Dit wordt bereikt door een proces van datarestrering met pariteit. Hiervoor zijn minimaal drie schijven nodig, omdat de gegevens op verschillende stations worden opgedeeld in strepen, maar dan wordt één blok over de streep opzij gezet voor pariteit. Om dit beter uit te leggen, kunnen we eerst kijken hoe de gegevens over drie schijven kunnen worden geschreven: In wezen neemt de aandrijfcontroller een stuk gegevens op dat over alle schijven in de array moet worden geschreven. Het eerste gegevenselement wordt op de eerste schijf geplaatst en de tweede op de tweede schijf. De derde schijf krijgt het pariteitsbit, wat in wezen een vergelijking is van de binaire gegevens op de eerste en tweede. In binaire wiskunde, heb je slechts 0 en 1. Een booleaans wiskundeproces wordt gedaan om de bits te vergelijken. Als de twee optellen tot een even getal (0 + 0 of 1 + 1), dan is de pariteitsbit nul. Als de twee optellen tot een oneven getal (1 + 0 of 0 + 1), dan zal het pariteitsbit één zijn. De reden hiervoor is dat als een van de schijven faalt, de controller vervolgens kan achterhalen wat de ontbrekende gegevens zijn. Bijvoorbeeld, als station één uitvalt, alleen twee en drie achterlaten, en station twee heeft een datablok van één en station drie heeft een pariteitsblok van één, dan moet het ontbrekende datablok op schijf één nul zijn. Dit biedt effectieve gegevensredundantie waarmee alle gegevens kunnen worden hersteld in het geval van een schijffout. Voor de meeste consumentenconfiguraties resulteert een storing er nog altijd in dat het systeem niet functioneert omdat het niet functioneert. Om het systeem functioneel te krijgen, moet de defecte schijf worden vervangen door een nieuwe schijfeenheid. Vervolgens moet een gegevensreconstructieproces worden uitgevoerd op het controllerniveau dat vervolgens een omgekeerde boolean-functie uitvoert om de gegevens op de ontbrekende schijf opnieuw te maken. Dit kan enige tijd duren, vooral voor schijven met een grotere capaciteit, maar het is op zijn minst herstelbaar. Nu is de capaciteit van een RAID 5-array afhankelijk van het aantal schijven in de array en hun capaciteit. Wederom wordt de array beperkt door de kleinste schijf in de array, dus het is het beste om aangepaste schijven te gebruiken. De effectieve opslagruimte is gelijk aan het aantal schijven min één keer de laagste capaciteit. Dus in wiskundige termen is dat zo (n-1) * Capacitymin . Dus als u drie 2 GB-schijven in een RAID 5-array hebt, is de totale capaciteit 4 GB. Een andere RAID 5-array die vier 2 GB-schijven gebruikte, zou 6 GB aan capaciteit hebben. De prestaties van de RAID 5 zijn nu een beetje ingewikkelder dan sommige andere vormen van RAID vanwege het booleaanse proces dat moet worden uitgevoerd om het pariteitsbit te maken wanneer de gegevens naar de schijven worden geschreven. Dit betekent dat de schrijfprestaties kleiner zijn dan een RAID 0-array met hetzelfde aantal schijven. Leesprestaties lijden echter niet zoveel als het schrijven, omdat het Boolean-proces niet wordt uitgevoerd omdat het de rechte gegevens van de schijven leest. We hebben de verschillende voor- en nadelen besproken van elk van de niveaus van RAID die kunnen worden gebruikt op pc's, maar er is nog een probleem dat veel mensen zich niet realiseren als het gaat om het maken van RAID-schijfopstellingen. Voordat een RAID-installatie kan worden gebruikt, moet deze eerst worden geconstrueerd door de hardwarecontroller of door de software van het besturingssysteem. Dit initialiseert in wezen de speciale opmaak die nodig is om goed te volgen hoe de gegevens worden geschreven en gelezen op de schijf. Dit klinkt waarschijnlijk niet als een probleem, maar het is als u zelfs moet wijzigen hoe u uw RAID-array wilt configureren. Stel dat u te weinig gegevens heeft en een extra schijf wilt toevoegen voor een RAID 0- of RAID 5-array. In de meeste gevallen kunt u dit niet doen zonder eerst de RAID-array opnieuw te configureren, waardoor ook de gegevens worden verwijderd die in die schijven zijn opgeslagen.Dit betekent dat u volledig een back-up van uw gegevens moet maken, het nieuwe station moet toevoegen, de drivearray moet herconfigureren, de drivearray moet formatteren en vervolgens uw oorspronkelijke gegevens moet terugzetten naar het station. Dat kan een buitengewoon pijnlijk proces zijn. Zorg er daarom voor dat je de opstelling van de array echt naar wens kunt instellen wanneer je hem voor de eerste keer gebruikt.RAID 1
Rijd 1 Drive 2 Blok 1 1 1 Blok 2 2 2 Blok 3 3 3 RAID 1 + 0 of 10
Rijd 1 Drive 2 Drive 3 Drive 4 Blok 1 1 1 2 2 Blok 2 3 3 4 4 Blok 3 5 5 6 6 RAID 5
Rijd 1 Drive 2 Drive 3 Blok 1 1 2 p Blok 2 3 p 4 Blok 3 p 5 6 Het grote probleem met alle RAID-instellingen