Windows.  Virus.  Bärbara datorer.  Internet.  Kontor.  Verktyg.  Förare

Låt oss nu se vilka typer som finns och hur de skiljer sig åt.

University of California i Berkeley introducerade följande nivåer av RAID-specifikationen, som har antagits som de facto-standarden:

  • RAID 0- Högpresterande diskarray med striping, utan feltolerans;
  • - speglad diskarray;
  • RAID 2 reserverad för arrayer som använder Hamming-kod;
  • RAID 3 och 4 - diskarrayer med striping och dedikerad paritetsskiva;
  • - diskarray med striping och "oallokerad paritetsdisk";
  • - interfolierad diskarray som använder två kontrollsummor beräknade på två oberoende sätt;
  • - RAID 0-array byggd från RAID 1-arrayer;
  • - RAID 0-array byggd från RAID 5-arrayer;
  • - RAID 0-array byggd från RAID 6-arrayer.

En hårdvaru-RAID-styrenhet kan stödja flera olika RAID-arrayer samtidigt, det totala antalet hårddiskar som inte överstiger antalet kontakter för dem. I det här fallet är kontrollern inbyggd i moderkortet BIOS-inställningar har bara två tillstånd (aktiverad eller inaktiverad), så en ny hårddisk som är ansluten till en oanvänd kontrollkontakt med RAID-läge aktiverat kan ignoreras av systemet tills den associeras som en annan JBOD (spand) RAID-array bestående av en enda disk .

RAID 0 (striping - "växling")

Läget som används för att uppnå maximal prestanda. Datan är jämnt fördelad över diskarna i arrayen. Distribuerade läs- och skrivoperationer kan avsevärt öka driftshastigheten, eftersom flera diskar samtidigt läser/skriver sin del av data. Användaren har tillgång till hela volymen av diskar, men detta minskar tillförlitligheten för datalagring, eftersom om en av diskarna misslyckas, förstörs arrayen vanligtvis och dataåterställning är nästan omöjlig. Tillämpningsomfång - applikationer som kräver höga utbyteshastigheter med disk, till exempel videoinspelning, videoredigering. Rekommenderas för användning med mycket pålitliga enheter.

(spegling - "spegling")

en uppsättning av två diskar som är kompletta kopior av varandra. Ej att förväxla med RAID 1+0, RAID 0+1 och RAID 10-arrayer, som använder mer än två enheter och mer komplexa speglingsmekanismer.

Ger acceptabel skrivhastighet och ökar läshastigheten vid parallellisering av frågor.

Den har hög tillförlitlighet - den fungerar så länge som minst en disk i arrayen fungerar. Sannolikheten för fel på två diskar samtidigt är lika med produkten av sannolikheten för fel på varje disk, dvs. betydligt lägre än sannolikheten för fel på en enskild disk. I praktiken, om en av diskarna misslyckas, måste omedelbara åtgärder vidtas för att återställa redundans. För att göra detta rekommenderas det att använda heta reservdiskar med valfri RAID-nivå (utom noll).

En variant av datadistribution över diskar, liknande RAID10, som tillåter användning av ett udda antal diskar (minsta antal - 3)

RAID 2, 3, 4

olika distribuerade datalagringsalternativ med diskar tilldelade för paritetskoder och olika blockstorlekar. För närvarande används de praktiskt taget inte på grund av låg prestanda och behovet av att allokera mycket diskkapacitet för lagring av ECC och/eller paritetskoder.

Den största nackdelen med RAID-nivåerna 2 till 4 är oförmågan att utföra parallella skrivoperationer, eftersom en separat kontrolldisk används för att lagra paritetsinformation. RAID 5 har inte denna nackdel. Datablock och kontrollsummor skrivs cykliskt till alla diskar i arrayen. Det finns ingen asymmetri i diskkonfigurationen. Kontrollsummor betyder resultatet av en XOR (exklusiv eller) operation. Xor har en funktion som gör det möjligt att ersätta valfri operand med resultatet, och genom att tillämpa algoritmen xor, få den saknade operanden som ett resultat. Till exempel: a xor b = c(Där a, b, c- tre diskar av raid-arrayen), i fall a vägrar, kan vi få honom genom att sätta honom på hans ställe c och efter att ha spenderat xor mellan c Och b: c xor b = a. Detta gäller oavsett antalet operander: a xor b xor c xor d = e. Om den vägrar c Sedan e tar hans plats och håller xor som ett resultat vi får c: a xor b xor e xor d = c. Denna metod ger i huvudsak version 5 feltolerans. För att lagra resultatet av xor krävs bara 1 disk, vars storlek är lika stor som storleken på någon annan disk i raiden.

Fördelar

RAID5 har blivit utbredd, främst på grund av dess kostnadseffektivitet. Kapaciteten för en RAID5-diskarray beräknas med formeln (n-1)*hddsize, där n är antalet diskar i matrisen och hddsize är storleken på den minsta disken. Till exempel, för en array med fyra 80 gigabyte diskar, kommer den totala volymen att vara (4 - 1) * 80 = 240 gigabyte. Att skriva information till en RAID 5-volym kräver ytterligare resurser och prestandan minskar, eftersom ytterligare beräkningar och skrivoperationer krävs, men vid läsning (jämfört med en separat hårddisk) finns en vinst eftersom dataströmmar från flera diskar i arrayen kan bearbetas parallellt.

Brister

Prestandan för RAID 5 är märkbart lägre, särskilt vid operationer som Random Write, där prestandan sjunker med 10-25 % av prestandan för RAID 0 (eller RAID 10), eftersom den kräver fler diskoperationer (varje operation skriver, med med undantag för de så kallade full-stripe-skrivningarna ersätts servern på RAID-styrenheten med fyra - två läsoperationer och två skrivoperationer). Nackdelarna med RAID 5 uppträder när en av diskarna misslyckas - hela volymen går in i kritiskt läge (försämras), alla skriv- och läsoperationer åtföljs av ytterligare manipulationer och prestandan sjunker kraftigt. I det här fallet reduceras tillförlitlighetsnivån till tillförlitligheten för RAID-0 med motsvarande antal diskar (det vill säga n gånger lägre än tillförlitligheten för en enda disk). Om tidigare fullständig återhämtning Om arrayen misslyckas, eller ett oåterställbart läsfel inträffar på minst en disk till, förstörs arrayen och data på den kan inte återställas med konventionella metoder. Det bör också beaktas att processen med RAID-rekonstruktion (återställning av RAID-data genom redundans) efter ett diskfel orsakar en intensiv läsbelastning från diskarna under många timmar kontinuerligt, vilket kan orsaka fel på någon av de återstående diskarna i den minst skyddade perioden av RAID-drift, samt identifiera tidigare oupptäckta läsfel i kalla datamatriser (data som inte nås under normal drift av matrisen, arkiverade och inaktiva data), vilket ökar risken för fel under dataåterställning.

Minsta antal diskar som används är tre.

RAID 6 liknar RAID 5, men har en högre grad av tillförlitlighet - kapaciteten på 2 diskar allokeras för kontrollsummor, 2 summor beräknas med olika algoritmer. Kräver en kraftfullare RAID-kontroller. Säkerställer drift efter samtidiga fel på två diskar - skydd mot flera fel. Minst 4 diskar krävs för att organisera arrayen. Användning av RAID-6 orsakar vanligtvis en minskning med 10-15 % i diskgruppsprestanda jämfört med RAID 5, vilket orsakas av den stora mängden bearbetning för styrenheten (behovet av att beräkna en andra kontrollsumma, samt läsa och skriva om fler diskblock när du skriver varje block).

RAID 0+1

RAID 0+1 kan i princip betyda två alternativ:

  • två RAID 0 kombineras till RAID 1;
  • tre eller flera diskar kombineras till en array, och varje datablock skrivs till två diskar av denna array; Således, med detta tillvägagångssätt, som i "ren" RAID 1, är den användbara volymen för arrayen hälften av den totala volymen för alla diskar (om de är diskar med samma kapacitet).

RAID 10 (1+0)

RAID 10 är en speglad array där data skrivs sekventiellt på flera diskar, som i RAID 0. Denna arkitektur är en RAID 0-typ array, med segment istället för separata skivorär RAID 1-arrayer Följaktligen måste en array på denna nivå innehålla minst 4 diskar (och alltid ett jämnt nummer). RAID 10 kombinerar hög feltolerans och prestanda.

Påståendet att RAID 10 är det mest tillförlitliga alternativet för datalagring är ganska motiverat av det faktum att arrayen kommer att inaktiveras efter fel på alla enheter i samma array. Om en enhet misslyckas är risken för fel på den andra i samma array 1/3*100=33%. RAID 0+1 kommer att misslyckas om två enheter misslyckas i olika arrayer. Risken för fel på en enhet i en angränsande array är 2/3*100=66%, men eftersom en enhet i en array med en defekt enhet inte längre används är chansen att nästa enhet kommer att misslyckas med hela arrayen. 2/2 *100=100 %

en array som liknar RAID5, men förutom distribuerad lagring av paritetskoder används distributionen av reservområden - i själva verket används en hårddisk, som kan läggas till RAID5-arrayen som reserv (sådana arrayer kallas 5+ eller 5+reserv). I en RAID 5-array är backup-disken inaktiv tills en av huvudhårddiskarna går sönder, medan i en RAID 5EE-array delas denna disk med resten av hårddiskarna hela tiden, vilket har en positiv effekt på prestandan av arrayen. Till exempel kommer en RAID5EE-array med 5 hårddiskar att kunna utföra 25 % fler I/O-operationer per sekund än en RAID5-array med 4 primära och en backup-hårddisk. Minsta antal diskar för en sådan array är 4.

att kombinera två (eller fler, men detta används extremt sällan) RAID5-arrayer till en stripe, dvs. en kombination av RAID5 och RAID0, vilket delvis korrigerar den största nackdelen med RAID5 - den låga dataskrivhastigheten på grund av parallell användning av flera sådana arrayer. Arrayens totala kapacitet reduceras med kapaciteten på två diskar, men till skillnad från RAID6 kan en sådan array motstå fel på endast en disk utan dataförlust, och det minsta nödvändiga antalet diskar för att skapa en RAID50-array är 6. Tillsammans med RAID10 är detta den mest rekommenderade RAID-nivån att använda i applikationer där hög prestanda i kombination med acceptabel tillförlitlighet krävs.

kombinera två RAID6-arrayer till en stripe. Skrivhastigheten är ungefär fördubblad jämfört med skrivhastigheten i RAID6. Minsta antal diskar för att skapa en sådan array är 8. Information går inte förlorad om två diskar från varje RAID 6-array misslyckas

(+) : Har hög tillförlitlighet - det fungerar så länge som minst en disk i arrayen fungerar. Sannolikheten för fel på två diskar samtidigt är lika med produkten av sannolikheten för fel på varje disk. I praktiken, om en av diskarna misslyckas, måste omedelbara åtgärder vidtas för att återställa redundans. För att göra detta rekommenderas det att använda heta reservdiskar med valfri RAID-nivå (utom noll). Fördelen med detta tillvägagångssätt är att bibehålla konstant tillgänglighet.

(-) : Nackdelen är att du måste betala kostnaden för två hårddiskar och få den användbara kapaciteten för endast en hårddisk.

RAID 1+0 och RAID 0+1

Spegel på många diskar - RAID 1+0 eller RAID 0+1. RAID 10 (RAID 1+0) hänvisar till alternativet när två eller flera RAID 1 kombineras till RAID 0. RAID 0+1 kan betyda två alternativ:

RAID 2

Matriser av denna typ är baserade på användningen av Hamming-kod. Diskar är indelade i två grupper: för data och för felkorrigeringskoder, och om data lagras på diskar behövs diskar för att lagra korrigeringskoder. Data distribueras över diskar avsedda för lagring av information, på samma sätt som i RAID 0, d.v.s. de är indelade i små block efter antalet diskar. De återstående diskarna lagrar felkorrigeringskoder, som kan användas för att återställa information om någon hårddisk går sönder. Hamming-metoden har länge använts i ECC-minne och tillåter snabb korrigering av enstaka fel och detektering av dubbla fel.

Värdighet RAID 2 är en förbättring av hastigheten för diskoperationer jämfört med prestandan för en enda disk.

Nackdel RAID 2-array är att det minsta antalet diskar där det är vettigt att använda det är 7. I det här fallet behövs en struktur på nästan dubbelt så många diskar (för n=3 kommer data att lagras på 4 diskar). , så denna typ av array är inte utbredd. Om det finns cirka 30-60 diskar är överskridandet 11-19%.


RAID 3

I en RAID 3-array av diskar delas data upp i mindre bitar än sektorsstorlek (delade i byte) eller block och distribueras över diskarna. En annan disk används för att lagra paritetsblock. RAID 2 använde en disk för detta ändamål, men det mesta av informationen på kontrolldiskarna användes för snabbfelkorrigering, medan de flesta användare är nöjda med att helt enkelt återställa information i händelse av ett diskfel, vilket är tillräckligt med information för att få plats på en dedikerad hårddisk.

Skillnader mellan RAID 3 och RAID 2: oförmågan att korrigera fel i farten och mindre redundans.

Fördelar:

  • höghastighetsläsning och skrivning av data;
  • Det minsta antalet diskar för att skapa en array är tre.

Brister:

  • en array av den här typen är bara bra för enuppgiftsarbete med stora filer, eftersom åtkomsttiden till en enskild sektor, uppdelad på diskar, är lika med det maximala åtkomstintervallet till sektorer på varje disk. För små block är åtkomsttiden mycket längre än lästiden.
  • det finns en stor belastning på kontrollskivan, och som ett resultat sjunker dess tillförlitlighet avsevärt jämfört med diskar som lagrar data.


RAID 4

RAID 4 liknar RAID 3, men skiljer sig genom att data är uppdelad i block snarare än byte. Således var det möjligt att delvis övervinna problemet med låg dataöverföringshastighet för små volymer. Skrivningen är långsam på grund av att paritet för blocket genereras under inspelning och skrivs till en enda disk. Bland de utbredda lagringssystemen används RAID-4 på NetApp-lagringsenheter (NetApp FAS), där dess brister framgångsrikt elimineras på grund av driften av diskar i ett speciellt gruppinspelningsläge, bestämt av det interna WAFL-filsystemet som används på enheterna .

RAID 5

Den största nackdelen med RAID-nivåerna 2 till 4 är oförmågan att utföra parallella skrivoperationer, eftersom en separat kontrolldisk används för att lagra paritetsinformation. RAID 5 har inte denna nackdel. Datablock och kontrollsummor skrivs cykliskt till alla diskar i arrayen. Det finns ingen asymmetri i diskkonfigurationen. Kontrollsummor betyder resultatet av en XOR (exklusiv eller) operation. Xor har en funktion som används i RAID 5, som gör det möjligt att ersätta valfri operand med resultatet, och med hjälp av algoritmen xor, få den saknade operanden som ett resultat. Till exempel: a xor b = c(Där a, b, c- tre diskar av raid-arrayen), i fall a vägrar, kan vi få honom genom att sätta honom på hans ställe c och efter att ha spenderat xor mellan c Och b: c xor b = a. Detta gäller oavsett antalet operander: a xor b xor c xor d = e. Om den vägrar c Sedan e tar hans plats och håller xor som ett resultat vi får c: a xor b xor e xor d = c. Denna metod ger i huvudsak version 5 feltolerans. För att lagra resultatet av xor krävs bara 1 disk, vars storlek är lika stor som storleken på någon annan disk i raiden.

(+) : RAID5 har blivit utbredd, främst på grund av dess kostnadseffektivitet. Kapaciteten för en RAID5-diskarray beräknas med formeln (n-1)*hddsize, där n är antalet diskar i matrisen och hddsize är storleken på den minsta disken. Till exempel, för en array med 4 diskar på 80 gigabyte, blir den totala volymen (4 - 1) * 80 = 240 gigabyte. Att skriva information till en RAID 5-volym kräver ytterligare resurser och prestandan minskar, eftersom ytterligare beräkningar och skrivoperationer krävs, men vid läsning (jämfört med en separat hårddisk) finns en vinst eftersom dataströmmar från flera diskar i arrayen kan bearbetas parallellt.

(-) : Prestandan för RAID 5 är märkbart lägre, särskilt vid operationer som Random Write, där prestandan sjunker med 10-25% av prestandan för RAID 0 (eller RAID 10), eftersom det kräver fler diskoperationer (varje servern skriver) operationen ersätts på RAID-styrenheten med tre - en läsoperation och två skrivoperationer). Nackdelarna med RAID 5 uppträder när en av diskarna misslyckas - hela volymen går in i kritiskt läge (försämras), alla skriv- och läsoperationer åtföljs av ytterligare manipulationer och prestandan sjunker kraftigt. I det här fallet reduceras tillförlitlighetsnivån till tillförlitligheten för RAID-0 med motsvarande antal diskar (det vill säga n gånger lägre än tillförlitligheten för en enda disk). Om, innan arrayen är helt återställd, ett fel inträffar eller ett oåterställbart läsfel inträffar på åtminstone ytterligare en disk, förstörs arrayen och data på den kan inte återställas med konventionella metoder. Det bör också beaktas att processen med RAID-rekonstruktion (återställning av RAID-data genom redundans) efter ett diskfel orsakar en intensiv läsbelastning från diskarna under många timmar kontinuerligt, vilket kan orsaka fel på någon av de återstående diskarna i den minst skyddade perioden av RAID-drift, samt identifiera tidigare oupptäckta läsfel i kalla datamatriser (data som inte nås under normal drift av matrisen, arkiverade och inaktiva data), vilket ökar risken för fel under dataåterställning. Det minsta antalet diskar som används är tre.

RAID 5EE

Obs: Stöds inte på alla kontroller RAID level-5EE liknar RAID-5E, men med effektivare användning av reservdisken och mer kort tidåterhämtning. I likhet med RAID-nivå-5E skapar denna RAID-arraynivå rader med data och kontrollsummor över alla enheter i arrayen. RAID-5EE ger förbättrad säkerhet och prestanda. När du använder RAID-nivå-5E begränsas kapaciteten för en logisk volym av kapaciteten på två fysiska hårddiskar i arrayen (en för kontroll, en backup). Reservdisken är en del av en RAID-nivå-5EE-array. Men till skillnad från RAID level-5E, som använder opartionerat ledigt utrymme för reserv, infogar RAID level-5EE kontrollsummablock i reservdisken, som visas i följande exempel. Detta gör att du kan återskapa data snabbare om en fysisk disk misslyckas. Med den här konfigurationen kommer du inte att kunna använda den med andra arrayer. Om du behöver en reservdisk för en annan array bör du ha en annan extra hårddisk. RAID level-5E kräver minst fyra enheter och stöder, beroende på firmwarenivå och deras kapacitet, från 8 till 16 enheter. RAID level-5E har specifik firmware. Obs: För RAID-nivå-5EE kan du bara använda en logisk volym i arrayen.

Fördelar:

  • 100 % dataskydd
  • Stor fysisk diskkapacitet jämfört med RAID-1 eller RAID -1E
  • Bättre prestanda jämfört med RAID-5
  • Snabbare RAID-återställning jämfört med RAID-5E

Brister:

  • Lägre prestanda än RAID-1 eller RAID-1E
  • Stöder endast en logisk volym per array
  • Oförmåga att dela en reservdisk med andra arrayer
  • Inte alla kontroller stöds

RAID 6

RAID 6 liknar RAID 5, men har en högre grad av tillförlitlighet - kapaciteten på 2 diskar allokeras för kontrollsummor, 2 summor beräknas med olika algoritmer. Kräver en kraftfullare RAID-kontroller. Säkerställer drift efter samtidiga fel på två diskar - skydd mot flera fel. För att organisera en array krävs minst 4 diskar. Användning av RAID-6 orsakar vanligtvis en minskning av diskgruppens prestanda med cirka 10-15 % jämfört med liknande RAID-5-prestanda, vilket orsakas av den stora mängden bearbetning för styrenheten (behovet av att beräkna en andra kontrollsumma, samt läsa och skriva om fler diskblock när du skriver varje block).

RAID 7

RAID 7 är ett registrerat varumärke som tillhör Storage Computer Corporation och är inte en separat RAID-nivå. Strukturen för arrayen är som följer: data lagras på diskar, en disk används för att lagra paritetsblock. Att skriva till diskar cachelagras med RAM-minne själva arrayen kräver en obligatorisk UPS; Vid strömavbrott uppstår datakorruption.

RAID 10

RAID 10 arkitekturdiagram

RAID 10 är en speglad array där data skrivs sekventiellt till flera diskar, som i RAID 0. Denna arkitektur är en RAID 0-array, vars segment är RAID 1-arrayer istället för individuella diskar. Följaktligen måste en array på denna nivå innehålla minst 4 diskar. RAID 10 kombinerar hög feltolerans och prestanda.

Aktuella kontroller använder detta läge som standard för RAID 1+0. Det vill säga, en disk är den viktigaste, den andra är en spegel, data läses från dem en efter en. Nu kan vi anta att RAID 10 och RAID 1+0 bara är olika namn för samma diskspeglingsmetod. Påståendet att RAID 10 är det mest tillförlitliga alternativet för datalagring är felaktigt, eftersom, trots att denna nivå RAID kan bibehålla dataintegriteten om hälften av diskarna misslyckas med irreversibel förstörelse av arrayen när två diskar misslyckas om de är i samma speglade par.

Kombinerade nivåer

Utöver de grundläggande RAID 0 - RAID 5 nivåerna som beskrivs i standarden finns det kombinerade RAID 1+0, RAID 3+0, RAID 5+0, RAID 1+5 nivåer, som olika tillverkare Var och en tolkar det olika.

  • RAID 1+0 är en kombination spegling Och alternering(se ovan).
  • RAID 5+0 är alternering volymer på den 5:e nivån.
  • RAID 1+5 - RAID 5 av spegladånga.

Kombinerade nivåer ärver både fördelarna och nackdelarna med sina "föräldrar": utseendet alternering på RAID 5+0-nivån ger det ingen tillförlitlighet, men det har en positiv effekt på prestandan. RAID-nivå 1+5 är förmodligen mycket pålitlig, men inte den snabbaste och dessutom extremt oekonomisk: volymens användbara kapacitet är mindre än hälften av diskarnas totala kapacitet...

Det är värt att notera att antalet hårddiskar i kombinerade arrayer också kommer att förändras. Till exempel, för RAID 5+0 används 6 eller 8 hårddiskar, för RAID 1+0 - 4, 6 eller 8.

Jämförelse av standardnivåer

Nivå Antal diskar Effektiv kapacitet* Feltolerans Fördelar Brister
0 från 2 S*N Inga högsta prestanda mycket låg tillförlitlighet
1 2 S 1 skiva pålitlighet
1E från 3 S*N/2 1 skiva** hög datasäkerhet och bra prestanda dubbel kostnad diskutrymme
10 eller 01 från 4, till och med S*N/2 1 skiva*** högsta prestanda och högsta tillförlitlighet dubbel kostnad för diskutrymme
5 från 3 till 16 S*(N - 1) 1 skiva ekonomisk, hög tillförlitlighet, bra prestanda prestanda under RAID 0
50 från 6, till och med S*(N - 2) 2 skivor** hög tillförlitlighet och prestanda höga kostnader och svårigheter att underhålla
5E från 4 S*(N - 2) 1 skiva kostnadseffektiv, hög tillförlitlighet, hastighet högre än RAID 5
5EE från 4 S*(N - 2) 1 skiva snabb datarekonstruktion efter ett fel, kostnadseffektiv, hög tillförlitlighet, hastighet högre än RAID 5 prestanda är lägre än RAID 0 och 1, backup-enheten är på tomgång och inte kontrollerad
6 från 4 S*(N - 2) 2 skivor ekonomisk, högsta tillförlitlighet prestanda under RAID 5
60 från 8, till och med S*(N - 2) 2 skivor hög tillförlitlighet, stora mängder data
61 från 8, till och med S * (N - 2) / 2 2 skivor** mycket hög tillförlitlighet höga kostnader och komplexitet i organisationen

* N är antalet diskar i arrayen, S är kapaciteten på den minsta disken. ** Information kommer inte att gå förlorad om alla diskar i en spegel misslyckas. *** Information kommer inte att gå förlorad om två diskar inom olika speglar misslyckas.

Matrix RAID

Matrix RAID är en teknik som implementeras av Intel i sina styrkretsar som börjar med ICH6R. Strängt taget är denna teknik inte en ny RAID-nivå (dess analog finns i RAID-styrenheter för hårdvara på hög nivå), den tillåter, med hjälp av ett litet antal diskar, att samtidigt organisera en eller flera arrayer av RAID 1, RAID 0 och RAID 5 nivåer Detta möjliggör relativt lite pengar kan ge ökad tillförlitlighet för vissa data, och hög hastighet för åtkomst och produktion för andra.

Ytterligare funktioner för RAID-kontroller

Många RAID-kontroller är utrustade med en uppsättning ytterligare funktioner:

  • "Hot Swap"
  • "Hot Spare"
  • Stabilitetskontroll.

Programvara (engelska) programvara) RAID

För att implementera RAID kan du använda inte bara hårdvara utan också helt och hållet mjukvarukomponenter (drivrutiner). Till exempel, i system baserade på Linux-kärnan, finns det speciella kärnmoduler, och du kan hantera RAID-enheter med hjälp av mdadm-verktyget. Software RAID har sina fördelar och nackdelar. Å ena sidan kostar det ingenting (till skillnad från hårdvaru-RAID-kontroller, som kostar $250 eller mer). Å andra sidan använder mjukvara RAID CPU-resurser, och vid tider med toppbelastning på disksystemet kan processorn spendera en betydande del av sin kraft på att serva RAID-enheter.

Linuxkärnan 2.6.28 (den senaste som släpptes 2008) stöder programvara RAID på följande nivåer: 0, 1, 4, 5, 6, 10. Implementeringen låter dig skapa RAID på separata diskpartitioner, vilket liknar Matrix RAID som beskrivs ovan. Uppstart från RAID stöds.

Vidareutveckling av RAID-idén

Tanken bakom RAID-arrayer är att kombinera diskar, som var och en behandlas som en uppsättning sektorer, och som ett resultat av drivrutinen filsystem"ser" som om en enda disk och arbetar med den, utan att uppmärksamma dess interna struktur. Men betydande förbättringar i prestanda och tillförlitlighet kan uppnås. disksystem, om filsystemdrivrutinen "vet" att den inte fungerar med en disk, utan med en uppsättning diskar.

Dessutom, om någon av diskarna i RAID-0 förstörs, kommer all information i arrayen att gå förlorad. Men om filsystemdrivrutinen placerar varje fil på en disk, och katalogstrukturen är korrekt organiserad, kommer endast filerna på den disken att gå förlorade om någon av diskarna förstörs; och filerna som ligger helt och hållet på de bevarade skivorna kommer att förbli tillgängliga.

Anställd Y-E Corporation Data, som är världens största tillverkare av USB-diskettenheter, skapade Daniel Olson en RAID-array med fyra

Nästan alla känner till ordspråket "Tills åskan slår kommer en man inte korsa sig." Det är viktigt: tills det här eller det problemet berör användaren nära kommer han inte ens att tänka på det. Strömförsörjningen dog och tog ett par enheter med sig - användaren skyndar sig att leta efter artiklar om relevanta ämnen om välsmakande och hälsosam mat. Processorn brann ut eller började fungera fel på grund av överhettning - i "Favoriter" visas ett par länkar till spretiga forumtrådar där CPU-kylning diskuteras.

Det är samma historia med hårddiskar: så snart nästa skruv, efter att ha spruckit sina huvuden adjö, lämnar vår dödliga värld, börjar ägaren av PC:n krångla för att säkerställa förbättringen av levnadsvillkoren för enheten. Men även den mest sofistikerade kylaren kan inte garantera ett långt och lyckligt liv för skivan. Omriktarens livslängd påverkas av många faktorer: tillverkningsfel och en oavsiktlig spark mot höljet (särskilt om kroppen står någonstans på golvet), och damm som passerar genom filtren och högspänningsstörningar som skickas av strömförsörjning... Det finns bara en väg ut - säkerhetskopiering information, och om du behöver säkerhetskopiering när du är på språng, då är det dags att bygga en RAID-array, eftersom nästan varje moderkort idag har någon form av RAID-kontroller.

Vid det här laget kommer vi att stanna och göra en kort utflykt till historien och teorin om RAID-arrayer. Själva förkortningen RAID står för Redundant Array of Independent Disks. Tidigare användes billig istället för oberoende, men med tiden har denna definition förlorat sin relevans: nästan alla diskenheter har blivit billiga.

RAID:s historia började 1987, när artikeln "Enclosure for Redundant Arrays of Low-Cost Disks (RAID)" publicerades, signerad av kamraterna Peterson, Gibson och Katz. Artikeln beskrev tekniken för att kombinera flera vanliga diskar till en array för att få en snabbare och mer pålitlig enhet. Författarna till materialet berättade också för läsarna om flera typer av arrayer - från RAID-1 till RAID-5. Därefter lades en RAID-array på nollnivå till de arrayer som beskrevs för nästan tjugo år sedan, och den blev populär. Så vad är alla dessa RAID-x? Vad är deras essens? Varför kallas de överflödiga? Vi ska försöka reda ut detta.

För att uttrycka det väldigt på ett enkelt språk, då är RAID en sak som gör att operativsystemet inte vet hur många diskar som är installerade i datorn. Att kombinera hårddiskar till en RAID-array är en process som är raka motsatsen till att dela upp ett enda utrymme i logiska enheter: vi bildar en logisk enhet baserad på flera fysiska. För att göra detta behöver vi antingen lämplig programvara (vi kommer inte ens att prata om det här alternativet - det är en onödig sak), eller en RAID-kontroller inbyggd i moderkortet, eller en separat insatt i en PCI eller PCI Express spår. Det är kontrollern som kombinerar diskarna till en array, och operativsystemet fungerar inte längre med hårddisken, utan med kontrollern, som inte säger något onödigt. Men det finns väldigt många alternativ för att kombinera flera diskar till en, närmare bestämt ett tiotal.

Vad är RAID-typer?

Den enklaste av dem är JBOD (Just a Bunch of Disks). Två hårddiskar limmas till en i serie, information skrivs först till den ena och sedan till den andra disken utan att bryta den i bitar och block. Från två 200 GB-enheter gör vi en 400 GB-enhet, som arbetar med nästan samma, och i verkligheten något lägre, hastighet som var och en av de två enheterna.

JBOD är ett specialfall av en nivå-0-array, RAID-0. Det finns också en annan variant av namnet på arrayer på denna nivå - stripe (strip), det fullständiga namnet är Striped Disk Array utan feltolerans. Det här alternativet innebär också att n diskar kombineras till en med en kapacitet ökad med n gånger, men diskarna kombineras inte sekventiellt utan parallellt, och information skrivs till dem i block (blockstorleken anges av användaren när en RAID bildas array).

Det vill säga, om sekvensen av nummer 123456 behöver skrivas till två enheter som ingår i en RAID-0-array, kommer styrenheten att dela upp denna kedja i två delar - 123 och 456 - och skriva den första till en disk, och den andra till den andra. Varje disk kan överföra data... ja, med en hastighet av 50 MB/s, och den totala hastigheten för två diskar, från vilka data tas parallellt, är 100 MB/s. Således bör hastigheten att arbeta med data öka n gånger (i verkligheten är naturligtvis hastighetsökningen mindre, eftersom ingen har avbrutit förlusterna för att söka efter data och överföra dem över bussen). Men denna ökning är inte given för intet: om minst en disk misslyckas går information från hela arrayen förlorad.

RAID nivå noll. Datan är uppdelad i block och spridd över diskar. Det finns ingen paritet eller redundans.

Det vill säga det finns ingen redundans och ingen redundans alls. Denna array kan endast betraktas som en RAID-array villkorligt, men den är väldigt populär. Få människor tänker på tillförlitlighet, det kan inte mätas med riktmärken, men alla förstår språket megabyte per sekund. Det här är inte dåligt eller bra, det bara händer. Nedan kommer vi att prata om hur man äter fisken och bibehåller tillförlitligheten. Återställer RAID-0 efter ett fel

Förresten, en ytterligare nackdel med stripe-arrayen är att den inte är portabel. Jag menar inte att han inte tolererar vissa typer av mat eller till exempel sina ägare. Han bryr sig inte om detta, men att flytta själva arrayen någonstans är ett helt problem. Även om du drar både diskar och styrenhetsdrivrutiner till din vän är det inte ett faktum att de kommer att definieras som en array och data kommer att kunna användas. Dessutom finns det fall där att helt enkelt ansluta (utan att skriva något!) stripe-diskar till en "icke-native" (annan från den som arrayen bildades på) styrenhet ledde till skada på informationen i arrayen. Vi vet inte hur relevant det här problemet är nu, med tillkomsten av moderna kontroller, men vi råder dig ändå att vara försiktig.


Nivå 1 RAID-array med fyra diskar. Diskarna är uppdelade i par och enheterna i paret lagrar samma data.

Den första riktigt "redundanta" arrayen (och den första RAID som dök upp) var RAID-1. Dess andra namn - spegel - förklarar funktionsprincipen: alla diskar som tilldelats för arrayen är uppdelade i par och information läses och skrivs till båda diskarna samtidigt. Det visar sig att var och en av diskarna i arrayen har en exakt kopia. I ett sådant system ökar inte bara tillförlitligheten för datalagring, utan också läshastigheten (du kan läsa från två hårddiskar samtidigt), även om skrivhastigheten förblir densamma som för en enhet.

Som du kanske gissar kommer volymen för en sådan array att vara lika med halva summan av volymerna för alla hårddiskar som ingår i den. Nackdelen med denna lösning är att du behöver dubbelt så många hårddiskar. Men tillförlitligheten för denna array är faktiskt inte ens lika med den dubbla tillförlitligheten för en enda disk, utan mycket högre än detta värde. Fel på två hårddiskar inom... ja, låt oss säga, en dag är osannolikt om inte till exempel strömförsörjningen ingriper. Samtidigt kommer vilken som helst vettig person som ser att en disk i ett par har misslyckats omedelbart att ersätta den, och även om den andra disken misslyckas direkt efter det, kommer informationen inte att gå någonstans.

Som du kan se har både RAID-0 och RAID-1 sina nackdelar. Hur kan jag bli av med dem? Om du har minst fyra hårddiskar kan du skapa en RAID 0+1-konfiguration. För att göra detta kombineras RAID-1-arrayer till en RAID-0-array. Eller vice versa, ibland skapas en RAID-1-array från flera RAID-0-arrayer (resultatet är RAID-10, vars enda fördel är mindre dataåterställningstid när en disk går sönder).

Tillförlitligheten för en sådan konfiguration av fyra hårddiskar är lika med tillförlitligheten för en RAID-1-array, och hastigheten är faktiskt densamma som för RAID-0 (i verkligheten kommer den troligen att vara något lägre på grund av den begränsade styrenhetens kapacitet). Samtidigt innebär det samtidigt fel på två diskar inte alltid en fullständig förlust av information: detta kommer bara att hända om diskarna som innehåller samma data misslyckas, vilket är osannolikt. Det vill säga, om fyra diskar är uppdelade i par 1-2 och 3-4 och paren kombineras till en RAID-0-array, så kommer bara det samtidiga felet på diskarna 1 och 2 eller 3 och 4 att leda till dataförlust, medan i händelse av att den första och tredje, andra och fjärde, första och fjärde eller andra och tredje hårddisken dör i förtid, kommer data att förbli säkra och sunda.

Den största nackdelen med RAID-10 är dock den höga kostnaden för diskar. Ändå kan priset på fyra (minst!) hårddiskar inte kallas små, särskilt om kapaciteten på bara två av dem i verkligheten är tillgänglig för oss (få människor tänker på tillförlitlighet och hur mycket det kostar, som vi redan har sagt ). Stor (100%) redundans av datalagring gör sig påmind. Allt detta har lett till att nyligen en arrayvariant som heter RAID-5 har vunnit popularitet. För att implementera det behöver du tre diskar. Förutom själva informationen lagrar styrenheten även paritetsblock på arrayenheterna.

Vi kommer inte att gå in på detaljerna om hur paritetskontrollalgoritmen fungerar, vi kommer bara att säga att om information går förlorad på en av diskarna, låter den dig återställa den med paritetsdata och livedata från andra diskar. Paritetsblocket har volymen av en fysisk disk och är jämnt fördelat över alla hårddiskar i systemet så att förlusten av en disk låter dig återställa information från den med hjälp av ett paritetsblock som finns på en annan disk i arrayen. Informationen delas upp i stora block och skrivs till diskarna en efter en, det vill säga enligt 12-34-56-principen när det gäller en array med tre diskar.

Följaktligen är den totala volymen för en sådan array volymen på alla diskar minus kapaciteten hos en av dem. Dataåterställning sker naturligtvis inte omedelbart, men ett sådant system har hög prestanda och en tillförlitlighetsmarginal till en lägsta kostnad (för en 1000 GB-array behöver du sex 200 GB-diskar). Men prestandan för en sådan array kommer fortfarande att vara lägre än hastigheten för ett stripe-system: med varje skrivoperation måste styrenheten också uppdatera paritetsindexet.

RAID-0, RAID-1 och RAID 0+1, ibland även RAID-5 - dessa nivåer förbrukar oftast kapaciteten hos stationära RAID-kontroller. Mer höga nivåer endast tillgängligt för komplexa system baserade på SCSI-hårddiskar. Lyckliga ägare av SATA-kontroller med Matrix RAID-stöd (sådana kontroller är inbyggda i sydbryggorna ICH6R och ICH7R från Intel) kan dock dra nytta av RAID-0 och RAID-1-arrayer med endast två diskar, och de som har ett kort med ICH7R , kan kombinera RAID-5 och RAID-0 om de har fyra identiska enheter.

Hur genomförs detta i praktiken? Låt oss titta på ett enklare fall med RAID-0 och RAID-1. Låt oss säga att du köpte två 400 GB hårddiskar. Du delar upp varje enhet i 100 GB och 300 GB logiska enheter. Efter det, med hjälp av Intel Application Accelerator RAID Option ROM-verktyget inbyggt i BIOS, kombinerar du 100 GB-partitioner till en stripe-array (RAID-0) och 300 GB-partitioner till en Mirror-array (RAID-1). Nu, på en snabb disk med en kapacitet på 200 GB, kan du lagra, säg, leksaker, videomaterial och andra data som kräver hög hastighet av diskundersystemet och dessutom inte är särskilt viktiga (det vill säga de som du kommer att ångrar inte att du förlorade), och på en speglad 300 GB gigabyte-skiva flyttar du arbetsdokument, e-postarkiv, verktygsprogram och andra viktiga filer. Om en enhet misslyckas förlorar du det som placerades på stripe-arrayen, men data du placerade på den andra logiska enheten dupliceras på den återstående enheten.

Att kombinera RAID-5- och RAID-0-nivåerna innebär att en del av volymen på fyra diskar allokeras för en snabb stripe-array, och den andra delen (låt det vara 300 GB på varje disk) faller på datablock och paritetsblock, som är, får du en en ultrasnabb 400 GB disk (4 x 100 GB) och en pålitlig men långsammare 900 GB array på 4 x 300 GB minus 300 GB för paritetsblock.

Som du kan se är den här tekniken extremt lovande, och det skulle vara trevligt om andra chipset- och kontrollertillverkare stödjer den. Det är väldigt frestande att ha arrayer av olika nivåer på två diskar, snabba och pålitliga.

Dessa är kanske alla typer av RAID-arrayer som används i hemsystem. Men i livet kan du stöta på RAID-2, 3, 4, 6 och 7. Så låt oss fortfarande se vad dessa nivåer är.

RAID-2. I en array av denna typ delas diskar in i två grupper - för data och för felkorrigeringskoder, och om data lagras på n diskar behövs n-1 diskar för att lagra korrigeringskoder. Data skrivs till motsvarande hårddiskar på samma sätt som i RAID-0 de är uppdelade i små block enligt antalet diskar avsedda för lagring av information. De återstående diskarna lagrar felkorrigeringskoder, som kan användas för att återställa information om någon hårddisk skulle fungera. Hamming-metoden har länge använts i ECC-minne och tillåter on-the-fly korrigering av små enbitsfel om de plötsligt uppstår, och om två bitar sänds felaktigt, kommer detta igen att detekteras med paritetssystem. Ingen ville dock behålla en skrymmande struktur på nästan dubbelt så många diskar för detta ändamål, och denna typ av array blev inte utbredd.

Array struktur RAID-3är detta: i en array av n diskar delas data upp i 1-byte block och fördelas över n-1 diskar, och en annan disk används för att lagra paritetsblock. I RAID-2 fanns det n-1-diskar för detta ändamål, men det mesta av informationen på dessa diskar användes endast för felkorrigering i farten, och för enkel återställning i händelse av ett diskfel, ett mindre antal av den räcker det räcker det med en dedikerad hårddisk.


RAID nivå 3 med en separat disk för lagring av paritetsinformation. Det finns ingen säkerhetskopia, men data kan återställas.

Följaktligen är skillnaderna mellan RAID-3 och RAID-2 uppenbara: omöjligheten av on-the-fly felkorrigering och mindre redundans. Fördelarna är följande: hastigheten för att läsa och skriva data är hög, och mycket få diskar krävs för att skapa en array, bara tre. Men en array av den här typen är bara bra för enuppgiftsarbete med stora filer, eftersom det finns hastighetsproblem med frekventa förfrågningar om små data.


En nivå 5-array skiljer sig från RAID-3 genom att paritetsblocken är jämnt fördelade över alla diskar i arrayen.

RAID-4 liknar RAID-3, men skiljer sig från den genom att data är uppdelad i block snarare än byte. Således var det möjligt att "besegra" problemet med låg dataöverföringshastighet för små volymer. Skrivningen är långsam på grund av att paritet för blocket genereras under inspelning och skrivs till en enda disk. Arrayer av denna typ används mycket sällan.

RAID-6- det här är samma RAID-5, men nu finns två paritetsblock lagrade på var och en av arraydiskarna. Således, om två diskar misslyckas, kan information fortfarande återställas. Naturligtvis ledde ökad tillförlitlighet till en minskning av den användbara volymen av diskar och en ökning av deras minsta antal: nu, om det finns n diskar i arrayen, kommer den totala volymen tillgänglig för inspelning av data att vara lika med volymen på en disk multiplicerat med n-2. Behovet av att beräkna två kontrollsummor på en gång bestämmer den andra nackdelen som ärvts av RAID-6 från RAID-5 - den låga dataskrivhastigheten.

RAID-7är ett registrerat varumärke som tillhör Storage Computer Corporation. Strukturen för arrayen är som följer: data lagras på n-1 skivor, en skiva används för att lagra paritetsblock. Men flera viktiga detaljer har lagts till för att eliminera den största nackdelen med arrayer av denna typ: en datacache och en snabb styrenhet som hanterar begäranden. Detta gjorde det möjligt att minska antalet diskåtkomster för att beräkna datakontrollsumman. Som ett resultat var det möjligt att avsevärt öka hastigheten på databehandlingen (på vissa ställen med fem eller fler gånger).



RAID-nivå 0+1-array, eller en design av två RAID-1-arrayer kombinerade till RAID-0. Pålitlig, snabb, dyr.

Nya nackdelar har också dykt upp: den mycket höga kostnaden för att implementera en sådan array, komplexiteten i dess underhåll, behovet av en avbrottsfri strömförsörjning för att förhindra dataförlust i cacheminnet vid strömavbrott. Det är osannolikt att du kommer att se en uppsättning av den här typen, men om du plötsligt ser den någonstans, skriv till oss, vi tittar också gärna på den.

Skapa en Array

Jag hoppas att du redan har lyckats välja arraytyp. Om ditt kort har en RAID-kontroller behöver du inget annat än det antal diskar och drivrutiner som krävs för denna kontroll. Förresten, kom ihåg: det är vettigt att bara kombinera diskar av samma storlek i arrayer, helst en modell. Styrenheten kan vägra att arbeta med diskar av olika storlekar, och troligen kommer du bara att kunna använda en del av stor disk, lika i volym som den minsta av skivorna. Dessutom kommer även hastigheten för en stripe-array att bestämmas av hastigheten på den långsammaste skivan. Och mitt råd till dig: försök inte göra RAID-arrayen startbar. Detta är möjligt, men om några fel uppstår i systemet kommer du att ha svårt, eftersom det kommer att vara mycket svårt att återställa funktionalitet. Dessutom är det farligt att placera flera system på en sådan array: nästan alla program som är ansvariga för att välja OS dödar information från hårddiskens serviceområden och skadar följaktligen arrayen. Det är bättre att välja ett annat schema: en disk är startbar och resten kombineras till en array.



Matrix RAID i aktion. En del av diskutrymmet används av RAID-0-arrayen, resten av utrymmet tas av RAID-1-arrayen.

Varje RAID-array börjar med RAID-styrenhetens BIOS. Ibland (endast i fallet med integrerade kontroller, och även då inte alltid) är det inbyggt i huvud-BIOS på moderkortet, ibland är det placerat separat och aktiveras efter att ha klarat ett självtest, men i alla fall måste du gå det. Det är i BIOS som de nödvändiga arrayparametrarna ställs in, liksom storleken på datablock, de hårddiskar som används och så vidare. När du har bestämt allt detta behöver du bara spara inställningarna, avsluta BIOS och återgå till operativsystemet.

Där måste du installera styrenhetsdrivrutinerna (som regel ingår en diskett med dem med moderkortet eller själva styrenheten, men de kan skrivas till en disk med andra drivrutiner och verktyg), starta om, och det är allt, arrayen är redo att användas. Du kan dela upp den i logiska enheter, formatera den och fylla den med data. Kom bara ihåg att RAID inte är ett universalmedel. Det kommer att rädda dig från att förlora data om din hårddisk dör och minimerar konsekvenserna av ett sådant resultat, men det kommer inte att rädda dig från strömstörningar och fel på en strömförsörjning av låg kvalitet, som dödar båda enheterna på en gång, oavsett deras "massivitet."

Försummelse av högkvalitativ strömförsörjning och temperaturförhållanden för diskarna kan avsevärt förkorta hårddiskens livslängd, det händer att alla diskar i arrayen misslyckas och all data går oåterkalleligt förlorad. I synnerhet moderna hårddiskar (särskilt IBM och Hitachi) är mycket känsliga för +12 V-kanalen och gillar inte ens den minsta spänningsförändringen på den, så innan du köper all utrustning som behövs för att bygga arrayen är det värt att kontrollera motsvarande spänningar och vid behov slå på en ny BP till inköpslistan.

Att driva hårddiskar, såväl som alla andra komponenter, från en andra strömförsörjning, vid första anblicken, är enkel att implementera, men det finns många fallgropar i ett sådant strömförsörjningsschema, och du måste tänka hundra gånger innan du bestämmer dig för att ta ett sådant steg. Med kylning är allt enklare: du behöver bara säkerställa luftflödet för alla hårddiskar, plus placera dem inte nära varandra. Enkla regler, men tyvärr följer inte alla dem. Och fall då båda diskarna i en array dör samtidigt är inte ovanliga.

Dessutom ersätter RAID inte behovet av att skapa regelbundet säkerhetskopior data. Spegling är spegling, men om du av misstag korrumperar eller raderar filer kommer den andra disken inte att hjälpa dig alls. Så gör säkerhetskopior när du kan. Denna regel gäller oavsett förekomsten av RAID-arrayer inuti datorn.

Så, är du RAIDy? Ja? Stor! Bara i jakten på volym och hastighet, glöm inte ett annat ordspråk: "Få en dåre att be till Gud, han kommer att krossa sin panna." Vi önskar dig starka diskar och pålitliga kontroller!

Kostnadsfördelar med bullriga RAID

RAID är bra även utan hänsyn till pengar. Men låt oss beräkna priset på den enklaste 400 GB stripe-arrayen. Två Seagate Barracuda SATA 7200.8-enheter på 200 GB vardera kommer att kosta dig cirka $230. RAID-kontroller är inbyggda i de flesta moderkort, vilket innebär att vi får dem gratis.

Samtidigt kostar en 400 GB-enhet av samma modell 280 dollar. Skillnaden är $50, och med dessa pengar kan du köpa kraftfullt block näring som du utan tvekan kommer att behöva. Jag pratar inte ens om att prestandan för en sammansatt "disk" till ett lägre pris kommer att vara nästan dubbelt så hög som prestandan för en enskild hårddisk.

Låt oss nu utföra beräkningen med fokus på den totala volymen på 250 GB. Det finns inga 125 GB-enheter, så låt oss ta två 120 GB-hårddiskar. Priset för varje disk är $90, priset för en 250 GB hårddisk är $130. Tja, med sådana volymer har prestanda ett pris. Vad händer om vi tar en 300 GB array? Två 160 GB diskar - cirka 200 $, en 300 GB - 170 $... Inte samma sak igen. Det visar sig att RAID bara är fördelaktigt när man använder mycket stora diskar.

RAID-teknik låter dig kombinera flera fysiska diskenheter (hårddiskar eller partitioner på dem) till en diskarray. Diskarna som ingår i arrayen hanteras centralt och presenteras i systemet som en logisk enhet, lämplig för att organisera ett enda filsystem på den.

Det finns två sätt att implementera RAID:

  • hårdvara;
  • programmera.

En hårdvarudiskarray består av flera hårddiskar som styrs med ett speciellt RAID-arraykontrollkort.

Fördelar med en hårdvaru-RAID-array:

  • högre tillförlitlighet (jämfört med programvara);
  • minimal belastning på processorn och systembussen;

Software RAID implementeras med hjälp av en speciell drivrutin. Diskpartitioner är organiserade i en mjukvaruarray, som kan uppta antingen hela disken eller en del av den, och hanteringen utförs med hjälp av speciella verktyg.

Fördelar med en mjukvaru-RAID-array:

  • högre hastighet för databehandling;
  • oberoende av dataformat på disk (kompatibel med olika typer och partitionsstorlekar);
  • besparingar vid köp av ytterligare utrustning.

RAID-nivåer

Det finns flera typer av RAID-arrayer, så kallade nivåer.

RAID0

För att skapa en array av denna nivå behöver du minst två diskar av samma storlek. Inspelning sker enligt principen alternering: data delas upp i datadelar av samma storlek och fördelas sekventiellt över alla diskar som ingår i arrayen. Eftersom inspelning utförs på alla diskar, kommer data att gå förlorade om en av dem misslyckas. Alla data som lagras i arrayen. Detta är priset för att välja att öka hastigheten för att arbeta med data: skrivning och läsning på olika diskar sker parallellt och följaktligen snabbare.

RAID1

Arrayer av denna nivå är byggda enligt principen spegling, där all data som spelats in på en disk dupliceras på en annan. För att skapa en sådan array behöver du två eller flera diskar av samma storlek. Redundans säkerställer feltolerans för arrayen: om en av diskarna misslyckas förblir data på den andra intakta. Priset att betala för tillförlitlighet är en faktisk minskning av diskutrymmet med hälften. Läs- och skrivhastigheter förblir på samma nivå som en konventionell hårddisk.

RAID4

RAID4-arrayer implementerar principen paritet, som kombinerar striping- och spegelteknik. En av de tre (eller mer) diskar används för att lagra paritetsinformation i form av block med kontrollsummor av datablock sekventiellt fördelade på de återstående diskarna (som i RAID0).

Fördelarna med denna nivå är feltoleransen för RAID1-nivån med mindre redundans (oavsett hur många diskar arrayen består av, används bara en av dem för kontrollinformation). Om en av diskarna misslyckas kan den förlorade datan återställas från kontrollblocken, och om arrayen har en backup-skiva startar återuppbyggnaden av data automatiskt. Den uppenbara nackdelen är dock minskningen av skrivhastigheten, eftersom paritetsinformation måste beräknas varje gång ny post till disk.

RAID5

Denna nivå liknar RAID4, med undantaget att blocken med paritetsinformation inte finns på en separat disk, utan är jämnt fördelade över alla diskar i arrayen tillsammans med datablocken. Resultatet är ökad databehandlingshastighet och hög feltolerans.

RAID-array (Redundant Array of Independent Disks) - ansluter flera enheter för att öka prestandan och/eller tillförlitligheten för datalagring, i översättning - en redundant array av oberoende diskar.

Enligt Moores lag ökar den nuvarande produktiviteten varje år (det vill säga antalet transistorer på ett chip fördubblas vartannat år). Detta kan ses i nästan varje hårdvaruindustri. Processorer ökar antalet kärnor och transistorer, samtidigt som processen minskar RAMökar frekvensen och genomströmning, minne solid state-enheterökar slitstyrkan och läshastigheten.

Men här är de enkla hårddiskar(Hårddiskar) har inte gjort några framsteg under de senaste 10 åren. Som standardhastigheten på 7200 rpm var, förblir den så (utan hänsyn till serverhårddiskar med varv på 10 000 eller mer). Långsamma 5400 rpm finns fortfarande på bärbara datorer. För de flesta användare, för att öka prestanda på sin dator, kommer det att vara bekvämare att köpa en SDD, men priset för 1 gigabyte av sådana media är mycket högre än för en enkel hårddisk. "Hur ökar man prestanda för enheter utan att förlora mycket pengar och volym? Hur sparar du dina data eller ökar säkerheten för dina data? Det finns ett svar på dessa frågor - en RAID-array.

Typer av RAID-arrayer

För närvarande finns följande typer av RAID-arrayer:

RAID 0 eller "Striping"– en uppsättning av två eller flera diskar att förbättra övergripande prestanda. Raidvolymen kommer att vara total (HDD 1 + HDD 2 = Total volym), läs-/skrivhastigheten blir högre (på grund av att inspelningen delas upp i 2 enheter), men tillförlitligheten för informationssäkerheten kommer att bli lidande. Om en av enheterna misslyckas kommer all information i arrayen att gå förlorad.

RAID 1 eller "Mirror"– flera diskar kopierar varandra för att öka tillförlitligheten. Skrivhastigheten förblir på samma nivå, läshastigheten ökar, tillförlitligheten ökar många gånger (även om en enhet misslyckas, kommer den andra att fungera), men kostnaden för 1 Gigabyte information ökar med 2 gånger (om du gör en array av två hårddiskar).

RAID 2 är en array byggd på diskar för lagring av information och felkorrigeringsdiskar. Antalet hårddiskar för lagring av information beräknas med formeln "2^n-n-1", där n är antalet hårddiskkorrigeringar. Denna typ används när det finns ett stort antal hårddiskar, det minsta acceptabla antalet är 7, där 4 är för att lagra information och 3 är för att lagra fel. Fördelen med denna typ är ökad prestanda jämfört med en enda disk.

RAID 3 – består av “n-1” diskar, där n är en disk för att lagra paritetsblock, resten är enheter för att lagra information. Informationen är uppdelad i bitar som är mindre än sektorstorleken (uppdelad i byte), väl lämpad för att arbeta med stora filer, läshastigheten för små filer är mycket låg. Kännetecknas av hög prestanda, men låg tillförlitlighet och snäv specialisering.

RAID 4 liknar typ 3, men är uppdelad i block snarare än byte. Denna lösning kunde korrigera den låga läshastigheten för små filer, men skrivhastigheten förblev låg.

RAID 5 och 6 - istället för en separat disk för felkorrelation, som i tidigare versioner, används block som är jämnt fördelade över alla enheter. I detta fall ökar läs-/skrivhastigheten på grund av parallellisering av inspelningen. Nackdelen med denna typ är den långsiktiga återställningen av information i händelse av fel på en av diskarna. Under återställning är det en mycket hög belastning på andra enheter, vilket minskar tillförlitligheten och ökar felet på en annan enhet och förlusten av all data i arrayen. Typ 6 förbättrar den övergripande tillförlitligheten men minskar prestandan.

Kombinerade typer av RAID-arrayer:

RAID 01 (0+1) – Två Raid 0:or kombineras till Raid 1.

RAID 10 (1+0) – RAID 1-diskarrayer, som används i typ 0-arkitektur. Det anses vara det mest pålitliga alternativet för datalagring, som kombinerar hög tillförlitlighet och prestanda.

Du kan också skapa en array från SSD-enheter . Enligt 3DNews-testning ger en sådan kombination ingen signifikant ökning. Det är bättre att köpa en enhet med ett kraftfullare PCI- eller eSATA-gränssnitt

Raid array: hur man skapar

Skapat genom att ansluta via en speciell RAID-kontroller. För närvarande finns det 3 typer av kontroller:

  1. Programvara – arrayen emuleras av programvara, alla beräkningar utförs av CPU:n.
  2. Integrerad – huvudsakligen distribuerad till moderkort(inte serversegment). Ett litet nagg på mattan. styrelse som är ansvarig för att emulera arrayen, beräkningar utförs genom CPU:n.
  3. Hårdvara – expansionskort (för stationära datorer), vanligtvis med PCI-gränssnitt, har sitt eget minne och datorprocessor.

RAID hdd-array: Hur man gör det från 2 diskar via IRST


Dataåterställning

Några alternativ för dataåterställning:

  1. Om Raid 0 eller 5 misslyckas kan RAID Reconstructor-verktyget hjälpa till, vilket kommer att montera tillgänglig information enheter och skriv om den till en annan enhet eller media i form av en bild av den tidigare arrayen. Detta alternativ Det hjälper om diskarna fungerar korrekt och felet är programvara.
  2. För Linux-system mdadm-återställning används (ett verktyg för att hantera programvara Raid-arrayer).
  3. Hårdvaruåterställning måste utföras genom specialiserade tjänster, för utan kunskap om den registeransvariges driftmetod kan du förlora all data och att få tillbaka dem kommer att vara mycket svårt eller till och med omöjligt.

Det finns många nyanser som måste beaktas när du skapar en raid på din dator. I grund och botten används de flesta alternativen inom serversegmentet, där datastabilitet och säkerhet är viktigt och nödvändigt. Om du har frågor eller tillägg kan du lämna dem i kommentarerna.

Ha en bra dag!



Om du upptäcker ett fel markerar du ett textstycke och trycker på Ctrl+Enter
DELA: