RAID - Redundant Array of Inexpensive Disks

Skrevet den 18. Nov 2003. Artiklen er vist 17648 gange.


Del med dine venner

     


Vi har allerede haft en lille artikel om RAID 0 og den hastighed man kan opnå ved det. Denne gang ser vi mere på det teoretiske.

RAID står oprindeligt for "Redundant Array of Inexpensive Disks". I dag er det blevet mere almindeligt at bruge "Independent" i stedet for "Inexpensive". RAID er en metode til at kombinere flere fysiske til en logisk enhed. RAID kan give fejltolerance og større hastighed end man kan opnå med en enkelt fysisk harddisk.

RAID kan implementeres på flere forskellige måder, og det er dem vi vil se nærmere på.

RAID 0 er den simpleste måde, men betegnes af mange ikke som ægte RAID da den ikke er fejltolerant. Nedenstående billede viser hvordan datamængden er spredt ud over diskene.


[Klik for stort billede]

Man kan egentlig godt oprette et RAID 0 array med en harddisk, men det er der ikke så meget ved. I de fleste tilfælde giver RAID 0 den største performance. Enkelte databaser er optimeret til RAID 5 eller RAID 1 og har derfor den bedste performance det.

Ulempen ved RAID 0 er at hvis en eller flere af de samlede harddiske fejler er alt data pr. definition tabt. Man bør derfor aldrig have vigtig data på et RAID 0 array.

RAID 1 giver fejltolerance og forbedret læsehastighed. Dette skyldes at datamængden spejles ud på to eller flere harddiske og kan dermed læses flere gange på samme tid.


[Klik for stort billede]

Ovenstående billede viser hvordan datamængden er spejlet ud på diskene. RAID 1 giver den mest sikre form for fejltolerance.

RAID 2 bruger Hamming Code til at korrigere fejl online. RAID 2 er ikke hurtig og kræver mange ECC diske sammenlignet med data diske. Dette giver en dårlig udnyttelsesgrad og ringe sikkerhed. RAID 2 understøttes stort set heller ikke af nogen RAID controllere i dag.


[Klik for stort billede]

Ovenstående billede viser implementeringen af RAID 2.

RAID 3 er som RAID-0 men har også en paritets disk. På denne måde kan der gå en disk tabt uden at man mister data. RAID 3 er hurtig til læsning og rimelig til skrivning men er kompleks at implementere. RAID 3 understøttes ligeledes ikke af alle controllere.


[Klik for stort billede]

RAID 4 er næsten identisk med RAID 3. Forskellen består i af at det her arbejdes med hele blokke og ikke bytes. RAID 4 kræver minimum tre harddiske og er meget komplekst. Samtidig er skrivehastigheden meget langsom og det er besværligt at genskabe data ved fejl.

Vortex er lige kommet med en række Ultra160 RAID controller, der understøtter RAID 4.


[Klik for stort billede]

RAID 5 har en rigtig høj læsehastighed, især med 5 - 6 harddiske eller mere. Ved RAID 5 er fejlkorrugeringen (paritets bittene) spred ligeligt ud over alle harddiskene som vist på billedet. Alle RAID controllere bruger ikke samme algoritme til beregning af paritetsskemaet, men overordnet er der ikke den store forskel.

Med RAID 5 er den hastighed man mister hvis en harddisk fejler mærkbar. Samtidig kan det tage lang tid at genopbygge arrayet med en ny harddisk. RAID 5 kræver logisk nok minimum 3 harddiske. RAID 5 er meget brugt på grund af den store udnyttelsesgrad og rimelige datasikkerhed.


[Klik for stort billede]

RAID 6 er i hovedtræk identisk med RAID 5. Forskellen mellem de to er, at der ved RAID 6 er to uafhængige paritetsskemaer. Ved RAID 6 kan man tåle at miste to harddiske. RAID 6 er nok noget af det sikreste man kan få. Kræver også en harddisk mere på grund af den andet paritetsskema.


[Klik for stort billede]

RAID 7 har en asynkron dataoverførsel og alle diske styres individuelt og har eget cache område. Alle læse og skrive operationer mellem diskene foregår gennem en separat cache. Ved RAID 7 har man alle paritetsoplysninger på en harddisk. Den kan sagtens placeres på samme controller som en af de andre diske. Man kan bruge op til tolv controllere og 48 harddiske. Det er vist ikke nødvendigt at nævne at det er en meget dyr løsning!


[Klik for stort billede]

RAID 10 er en kombination af RAID 0 og RAID 1 og kræver minimum fire harddiske. RAID 10 har samme fejltolerance som RAID 1 og har samtidig en meget høj dataoverførselshastighed. RAID 10 er dyrt at implementere på grund af den lave udnyttelse af diskplads. 


[Klik for stort billede]

RAID 53 er sjovt nok en kombination af RAID 0 og RAID 3. RAID 53 er meget hurtig til at læse og skrive, hvilket som ved RAID 10 skyldes RAID 0 delen. RAID 53 er også en dyr løsning, og alle harddiske skal synkroniseres. Dette er noget harddiskene skal understøtte da det gøres ved at forbinde alle diskene med et kabel. Jeg har selv seks Seagate der understøtter dette.


[Klik for stort billede]

RAID 0+1 skal ikke forveksles med RAID 10. RAID 0+1 består at to sæt RAID 0 arrays, der er spejlet. RAID 0+1 har samme fejltolerance som RAID 5 men har samtidig den høje hastighed fra RAID 0. Hvis en harddisk fejler står man tilbage med et RAID 0 array. Det er en dyr løsning da der minimum kræves fire harddiske og ved hver udvidelse kræver yderligere to.


[Klik for stort billede]

Nogle RAID controllere understøtter "Hot Swap" hvilket giver mulighed for at udskifte en defekt harddisk mens systemet stadig kører. Nogle controllere kræver dog at der ikke overføres data på bussen mens den nye harddisk monteres. Det er fx tilfældet med Adaptec AAA-131U2.

Flere controllere giver også mulighed for "Hot Spare" hvilket betyder at man kan udpege harddiske til at overtage hvis andre fejler. Disse harddiske er i "dvale" når systemet kører.

Mængden af cache på RAID controlleren har også meget at sige - især ved mere komplekse former for RAID. Her bruges cachen til at lagre udregninger og paritets oplysninger. På flere controllere er et område i cachen ligefrem dedikeret til dette og bruges altså ikke til den data der overføres til og fra harddiskene.

Hvis man har en RAID controller med flere kanaler kan man med fordel fordele harddiskene ud over disse. Dette kunne fx være en Adaptec AAA-133 eller AAA-133U2 controller. På denne måde kan der læses og skrives på samme tid. På et enkelt kabel kan der enten læses eller skrives - hvis man da ikke lige har en SSA controller og harddiske i sin maskine!



0 Kommentarer
Skriv kommentar til artikler Kommentarer til artikler fra Facebook

 

Nyeste Videoer og Trailers

Seneste nyheder

Tweak.dk interview med eSport veteran Carsten Petersen

Tweak.dk har fået æren af at lave et interview med eSports veteranen Carsten Petersen
Læs Mere

Ny display-teknologi på vej til Apple Watch Series 3

Apple arbejder på at udgive en tredje serie af det populære Apple Watch. Som noget nyt kan man angiveligt forv
Læs Mere

Leaked: Samsung Galaxy Tab S3

Alle tripper for at blive præsenteret for Samsungs Galaxy S8-smartphone. Alt imens er den sydkoreanske virksom
Læs Mere

Blizzard stopper støtte til Windows Vista

Blizzard ser ikke længere nogen grund til at satse på Windows XP og Windows Vista. De to Windows-versioner er
Læs Mere

Så er AMD Ryzen officiel bekræftet af AMD

Endelig melder AMD sig på banen omkring den kommende AMD Ryzen. Denne gang omtales priser, release dato, Die b
Læs Mere

Nyt Samsung Galaxy S8 billede leaked

Et nyt billede er leaked af SamMobile, der meget vel kunne ligne den nye Samsung Galaxy S8. Det mest iøjnefald
Læs Mere

Microsoft bekræfter endnu en stor Windows 10 opdatering

Microsoft afslørede første gang, at de havde to store Windows 10 opdateringer i 2017 tilbage i august, men vir
Læs Mere

Kendt Twitch streamer død under velgørenheds-livestream

World of Tanks Twitch streamer Brian ’’ PoShYbRiD’’ Vigneault er død af ukendte årsager, mens han deltog I et
Læs Mere
Indsend nyhed
Har du fundet en fed nyhed så indsend den så alle andre på Tweak.dk kan få glæde af den.