RAID

Vsebina

·         1 Uvod

o    1.1 Razlika med fizičnimi in logičnimi diski

o    1.2 Branje in pisanje podatkov

o    1.3 Kaj je RAID?

o    1.4 Zakaj uporabljati RAID?

o    1.5 Zgodovina

·         2 Osnovni koncepti, ki jih uporabljajo sistemi RAID

o    2.1 Predpomnilnik

o    2.2 Zrcaljenje: Več kot ena kopija podatkov

o    2.3 Črtkanje: Del podatkov je na drugem disku

o    2.4 Popravljanje napak in napake

o    2.5 Vroči rezervni deli: uporaba več diskov, kot jih potrebujete

o    2.6 Velikost traku in velikost kosa: razporeditev podatkov na več diskov

o    2.7 Sestavljanje diska: JBOD, združevanje ali povezovanje

o    2.8 Kloniranje pogona

o    2.9 Različne nastavitve

·         3 Osnove: preproste ravni RAID

o    3.1 Običajno uporabljene ravni RAID

§  3.1.1 RAID 0 "striping"

§  3.1.2 RAID 1 "zrcaljenje"

§  3.1.3 RAID 5 "razporeditev s porazdeljeno enakostjo"

§  3.1.4 Slike

o    3.2 Manj uporabljene ravni RAID

§  3.2.1 RAID 2

§  3.2.2 RAID 3 "razmejitev z namensko pariteto"

§  3.2.3 RAID 4 "razmejitev z namensko pariteto"

§  3.2.4 RAID 6

§  3.2.5 Slike

o    3.3 Nestandardne ravni RAID

§  3.3.1 Dvojna pariteta / Diagonalna pariteta

§  3.3.2 RAID-DP

§  3.3.3 RAID 1.5

§  3.3.4 RAID 5E, RAID 5EE in RAID 6E

§  3.3.5 RAID 7

§  3.3.6 Intel Matrix RAID

§  3.3.7 Gonilnik Linux MD RAID

§  3.3.8 RAID Z

§  3.3.9 Slike

·         4 Združevanje ravni RAID

·         5 Izdelava RAID

o    5.1 Programska oprema RAID

o    5.2 Strojna oprema RAID

o    5.3 Strojno podprt RAID

·         6 Različni izrazi, povezani z okvarami strojne opreme

o    6.1 Stopnja odpovedi

o    6.2 Povprečni čas do izgube podatkov

o    6.3 Povprečni čas do okrevanja

o    6.4 Neopravljiva stopnja bitnih napak

·         7 Težave z RAID

o    7.1 Kasnejše dodajanje diskov

o    7.2 Povezane napake

o    7.3 Atomičnost

o    7.4 Podatki, ki jih ni mogoče obnoviti

o    7.5 Zanesljivost predpomnilnika za pisanje

o    7.6 Združljivost opreme

·         8 Kaj RAID zmore in česa ne zmore

o    8.1 Kaj lahko naredi RAID

o    8.2 Česa RAID ne more narediti

·         9 Primer

·         10 Sklicevanja

·         11 Druga spletna mesta

RAID je kratica, ki pomeni Redundant Array of Inexpensive Disks ali Redundant Array of Independent Disks. RAID je izraz, ki se uporablja v računalništvu. Pri RAID je več trdih diskov sestavljenih v en logični disk. To je mogoče storiti na različne načine. Vsak od načinov, ki trde diske združuje, ima nekaj prednosti in slabosti v primerjavi z uporabo diskov kot posameznih diskov, neodvisnih drug od drugega. Glavni razlogi za uporabo RAID so:

  • Da bi se izguba podatkov dogajala redkeje. To dosežemo tako, da imamo več kopij podatkov.
  • Več prostora za shranjevanje z več manjšimi diski.
  • Večja prilagodljivost (diske lahko spreminjate ali dodajate med delovanjem sistema)
  • Za hitrejše pridobivanje podatkov.

Vseh teh ciljev ni mogoče doseči hkrati, zato se je treba odločiti.

Obstaja tudi nekaj slabih stvari:

  • Z določenimi izbirami se lahko zaščitite pred izgubo podatkov zaradi okvare enega (ali več) diskov. Vendar ne ščitijo pred izbrisom ali prepisovanjem podatkov.
  • V nekaterih konfiguracijah lahko RAID dopušča odpoved enega ali več diskov. Po zamenjavi okvarjenih diskov je treba rekonstruirati podatke. Odvisno od konfiguracije in velikosti diskov lahko ta rekonstrukcija traja dolgo.
  • Zaradi nekaterih vrst napak podatkov ni mogoče prebrati.

Večina dela na področju RAID temelji na članku iz leta 1988.

Podjetja uporabljajo sisteme RAID za shranjevanje podatkov že vse od nastanka te tehnologije. Sistemi RAID so lahko izdelani na različne načine. Od odkritja so se stroški izdelave sistema RAID zelo znižali. Zato imajo nekatere funkcije RAID celo nekateri računalniki in naprave, ki se uporabljajo doma. Takšni sistemi se lahko uporabljajo na primer za shranjevanje glasbe ali filmov.

Uvod

Razlika med fizičnimi in logičnimi diski

Trdi disk je del računalnika. Običajni trdi diski za shranjevanje informacij uporabljajo magnetizem. Ko se trdi diski uporabljajo, so na voljo operacijskemu sistemu. V operacijskem sistemu Microsoft Windows bo vsak trdi disk dobil črko pogona (začne se s C:, A: ali B: sta rezervirana za disketne enote). Operacijski sistemi Unix in Linuxu podobni operacijski sistemi imajo enopravilno drevo imenikov. To pomeni, da ljudje, ki uporabljajo računalnike, včasih ne vedo, kje so shranjeni podatki (če smo pošteni, tudi veliko uporabnikov sistema Windows ne ve, kje so shranjeni njihovi podatki).

V računalništvu se trdi diski (ki so strojna oprema in se jih lahko dotaknemo) včasih imenujejo fizični pogoni ali fizični diski. To, kar operacijski sistem prikaže uporabniku, se včasih imenuje logični disk. Fizični disk lahko razdelimo na različne dele, ki se imenujejo diskovne particije. Običajno vsak diskovni razdelek vsebuje en datotečni sistem. Operacijski sistem bo vsak razdelek prikazal kot logični disk.

Zato bosta za uporabnika nastavitev z veliko fizičnimi diski in nastavitev z veliko logičnimi diski videti enako. Uporabnik se ne more odločiti, ali je "logični disk" enak fizičnemu disku ali je le del diska. Omrežja za shranjevanje podatkov (SAN) popolnoma spremenijo ta pogled. Vse, kar je vidno v omrežju SAN, je število logičnih diskov.

Branje in pisanje podatkov

V računalniku so podatki organizirani v obliki bitov in bajtov. V večini sistemov bajt sestavlja 8 bitov. Računalniški pomnilnik za shranjevanje podatkov uporablja elektriko, trdi diski pa magnetizem. Zato se pri zapisovanju podatkov na disk električni signal pretvori v magnetnega. Pri branju podatkov z diska se pretvorba opravi v drugo smer: Električni signal se pretvori iz polarnosti magnetnega polja.

Kaj je RAID?

Polje RAID združuje dva ali več trdih diskov, tako da tvorijo logični disk. Razlogi za to so različni. Najpogostejši so naslednji:

  • zaustavitev izgube podatkov, ko eden ali več diskov v polju odpove.
  • Hitrejši prenos podatkov.
  • Možnost menjave diskov med delovanjem sistema.
  • Združevanje več diskov, da bi dobili večjo zmogljivost shranjevanja; včasih se namesto enega dražjega diska uporabi več poceni diskov.

RAID se izvaja z uporabo posebne strojne ali programske opreme v računalniku. Združeni trdi diski so uporabniku videti kot en sam trdi disk. Večina ravni RAID povečuje redundanco. To pomeni, da podatke shranjujejo pogosteje ali pa shranjujejo informacije o tem, kako rekonstruirati podatke. To omogoča, da se lahko več diskov pokvari, ne da bi bili podatki izgubljeni. Ko se okvarjeni disk zamenja, se podatki, ki naj bi jih vseboval, kopirajo ali obnovijo z drugih diskov v sistemu. To lahko traja dlje časa. Čas, ki je potreben, je odvisen od različnih dejavnikov, na primer od velikosti polja.

Zakaj uporabljati RAID?

Eden od razlogov, zakaj številna podjetja uporabljajo RAID, je ta, da je podatke v polju mogoče preprosto uporabiti. Uporabnikom, ki uporabljajo podatke, se ni treba zavedati, da uporabljajo RAID. Ko pride do okvare in se polje obnavlja, bo dostop do podatkov počasnejši. Dostop do podatkov v tem času bo prav tako upočasnil postopek obnovitve, vendar je to še vedno veliko hitreje, kot če s podatki sploh ne bi mogli delati. Odvisno od ravni RAID pa se lahko zgodi, da diski ne odpovedo, medtem ko se novi disk pripravlja za uporabo. Če disk odpove v tem času, bodo izgubljeni vsi podatki v polju.

Različni načini združevanja diskov se imenujejo ravni RAID. Večja številka za raven ni nujno boljša. Različne ravni RAID imajo različne namene. Nekatere ravni RAID potrebujejo posebne diske in posebne krmilnike.

Zgodovina

Leta 1978 je Norman Ken Ouchi, ki je delal pri IBM-u, podal predlog, v katerem je opisal načrte za sistem, ki je pozneje postal RAID 5. V načrtih je bilo opisano tudi nekaj podobnega RAID 1 in zaščita dela RAID 4.

Delavci na univerzi Berkeley so leta 1987 pomagali načrtovati raziskave. Poskušali so omogočiti, da bi tehnologija RAID prepoznala dva trda diska namesto enega. Ugotovili so, da je tehnologija RAID z dvema trdima diskoma omogočala veliko boljše shranjevanje kot z enim trdim diskom. Vendar se je veliko pogosteje sesuvala.

Leta 1988 so David Patterson, Garth Gibson in Randy Katz v članku z naslovom "A Case for Redundant Arrays of Inexpensive Disks (RAID)" opisali različne vrste RAID (1 do 5). V tem članku je bila nova tehnologija prvič poimenovana RAID in ime je postalo uradno.

Trdi disk je bil odstranjen iz polja.Zoom
Trdi disk je bil odstranjen iz polja.

Bližnji pogled na 4 diske, ki sestavljajo polje RAID, vgrajeno v namizni sistem. Modre ključavnice omogočajo zamenjavo diskov med delovanjem sistema.Zoom
Bližnji pogled na 4 diske, ki sestavljajo polje RAID, vgrajeno v namizni sistem. Modre ključavnice omogočajo zamenjavo diskov med delovanjem sistema.

Osnovni koncepti, ki jih uporabljajo sistemi RAID

RAID uporablja nekaj osnovnih idej, ki so bile opisane v članku "RAID: High-Performance, Reliable Secondary Storage" avtorja Petra Chena in drugih, objavljenem leta 1994.

Predpomnilnik

Predpomnjenje je tehnologija, ki se uporablja tudi v sistemih RAID. V sistemih RAID se uporabljajo različne vrste predpomnilnikov:

V sodobnih sistemih se zahteva za pisanje prikaže kot opravljena, ko so podatki zapisani v predpomnilnik. To ne pomeni, da so bili podatki zapisani na disk. Zahteve iz predpomnilnika niso nujno obravnavane v enakem vrstnem redu, kot so bile zapisane v predpomnilnik. Zaradi tega se lahko zgodi, da v primeru okvare sistema včasih nekateri podatki niso bili zapisani na zadevni disk. Zaradi tega ima veliko sistemov predpomnilnik, ki ga podpira baterija.

Zrcaljenje: Več kot ena kopija podatkov

Ko govorimo o ogledalu, je to zelo preprosta zamisel. Namesto da bi bili podatki samo na enem mestu, obstaja več kopij podatkov. Te kopije so običajno na različnih trdih diskih (ali diskovnih particijah). Če obstajata dve kopiji, lahko ena od njiju odpove, ne da bi to vplivalo na podatke (saj so še vedno na drugi kopiji). Zrcaljenje lahko poveča tudi hitrost branja podatkov. Vedno se bodo prevzeli z najhitrejšega diska, ki se odziva. Pisanje podatkov je počasnejše, saj je treba posodobiti vse diske.

Črtkanje: Del podatkov je na drugem disku

Pri razmejitvi se podatki razdelijo na različne dele. Ti deli se nato znajdejo na različnih diskih (ali diskovnih particijah). To pomeni, da je pisanje podatkov hitrejše, saj se lahko izvaja vzporedno. To pa ne pomeni, da ne bo napak, saj se vsak blok podatkov nahaja le na enem disku.

Popravljanje napak in napake

Izračunati je mogoče različne vrste kontrolnih vsot. Nekatere metode izračuna kontrolnih vsot omogočajo iskanje napak. To omogoča večina ravni RAID, ki uporabljajo redundanco. Nekatere metode so težje izvedljive, vendar omogočajo ne le odkrivanje napake, temveč tudi njeno odpravljanje.

Vroči rezervni deli: uporaba več diskov, kot je potrebno

Veliko načinov za podporo RAID se imenuje hot spare. Vroči rezervni disk je prazen disk, ki se pri običajnem delovanju ne uporablja. Ob okvari diska se lahko podatki neposredno kopirajo na vroči rezervni disk. Na ta način je treba okvarjeni disk zamenjati z novim praznim diskom, ki postane vroča rezervna enota.

Velikost trakov in velikost kosov: razporeditev podatkov na več diskov

RAID deluje tako, da podatke razporedi na več diskov. Dva izraza, ki se pogosto uporabljata v tem kontekstu, sta velikost traku in velikost kosa.

Velikost kosa je najmanjši podatkovni blok, ki se zapiše na posamezen disk polja. Velikost traku je velikost podatkovnega bloka, ki se razporedi po vseh diskih. Tako bo pri štirih diskih in velikosti traku 64 kilobajtov (kB) na vsak disk zapisanih 16 kB. Velikost kosa v tem primeru je torej 16 kB. Večja velikost traku pomeni večjo hitrost prenosa podatkov, vendar tudi večjo največjo zakasnitev. V tem primeru je to čas, potreben za pridobitev bloka podatkov.

Sestavljanje diska: JBOD, združevanje ali povezovanje

Številni krmilniki (in tudi programska oprema) lahko sestavljajo diske na naslednji način: Vzemite prvi disk, dokler se ne konča, nato vzemite drugega in tako naprej. Na ta način je več manjših diskov videti kot večji. To ni pravi RAID, saj ni redundance. Poleg tega lahko raztezanje združuje diske, pri čemer RAID 0 ne more storiti ničesar. Na splošno se to imenuje samo skupek diskov (JBOD).

Gre za oddaljenega sorodnika RAID, saj je logični disk sestavljen iz različnih fizičnih diskov. Konkatenacija se včasih uporablja za pretvorbo več majhnih pogonov v en večji uporaben pogon. Tega pri RAID 0 ni mogoče narediti. JBOD lahko na primer združi 3 GB, 15 GB, 5,5 GB in 12 GB pogone v logični pogon s 35,5 GB, ki je pogosto bolj uporaben kot posamezni pogoni.

V diagramu na desni strani so podatki združeni od konca diska 0 (blok A63) do začetka diska 1 (blok A64); od konca diska 1 (blok A91) do začetka diska 2 (blok A92). Če bi uporabili RAID 0, bi bila disk 0 in disk 2 skrajšana na 28 blokov, kar je velikost najmanjšega diska v polju (disk 1), skupna velikost pa je 84 blokov.

Nekateri krmilniki RAID uporabljajo JBOD, da bi govorili o delu na pogonih brez funkcij RAID. Vsak pogon se v operacijskem sistemu prikaže ločeno. Ta JBOD ni enak združevanju.

Številni sistemi Linux uporabljajo izraza "linearni način" ali "način dodajanja". V operacijskem sistemu Mac OS X 10.4, ki se imenuje "sklop sklenjenih diskov", v primeru okvare enega od diskov v sklopu sklenjenih diskov uporabniku ne ostanejo uporabni podatki na preostalih diskih, čeprav diski sicer delujejo, kot je opisano zgoraj.

Konkatenacija je ena od možnosti uporabe upravitelja logičnih zvezkov v Linuxu. Uporablja se lahko za ustvarjanje navideznih pogonov.

Kloniranje pogona

Večina sodobnih trdih diskov ima standard, ki se imenuje tehnologija samonadzora, analize in poročanja (S.M.A.R.T.). SMART omogoča spremljanje določenih stvari na trdem disku. Nekateri krmilniki omogočajo zamenjavo posameznega trdega diska, še preden odpove, na primer zato, ker S. M.A.R.T ali drug test diska poroča o prevelikem številu napak, ki jih je mogoče popraviti. V ta namen bo krmilnik vse podatke kopiral na vroči rezervni disk. Nato lahko disk zamenja z drugim (ki bo preprosto postal novi vroči rezervni disk).

Različne nastavitve

Nastavitev diskov in način uporabe zgoraj navedenih tehnik vplivata na zmogljivost in zanesljivost sistema. Če se uporablja več diskov, je večja verjetnost, da bo eden od diskov odpovedal. Zaradi tega je treba zgraditi mehanizme, ki omogočajo iskanje in odpravljanje napak. Zaradi tega je celoten sistem bolj zanesljiv, saj je sposoben preživeti in popraviti napako.

 

JBOD s 3 diski različnih velikostiZoom
JBOD s 3 diski različnih velikosti

Osnove: preproste ravni RAID

Običajne ravni RAID

RAID 0 "razmejitev"

RAID 0 v resnici ni RAID, ker ni redundanten. Pri RAID 0 so diski preprosto združeni v velik disk. Temu pravimo "striping". Ko odpove en disk, odpove celotno polje. Zato se RAID 0 redko uporablja za pomembne podatke, vendar sta lahko branje in pisanje podatkov z diska s stripingom hitrejša, ker vsak disk hkrati prebere del datoteke.

Pri RAID 0 so diskovni bloki, ki si sledijo drug za drugim, običajno nameščeni na različnih diskih. Zato morajo biti vsi diski, ki jih uporablja RAID 0, enako veliki.

RAID 0 se pogosto uporablja za izmenjevalni prostor v operacijskih sistemih Linux ali Unixu podobnih operacijskih sistemih.

RAID 1 "zrcaljenje"

Pri RAID 1 sta dva diska združena. Na obeh so enaki podatki, eden pa zrcali drugega. To je enostavna in hitra konfiguracija, ki se izvaja s strojnim krmilnikom ali programsko opremo.

RAID 5 "razmejitev s porazdeljeno enakostjo"

Verjetno se najpogosteje uporablja raven RAID 5. Za izgradnjo pomnilniškega polja RAID 5 so potrebni vsaj trije trdi diski. Vsak blok podatkov bo shranjen na treh različnih mestih. Na dveh od teh mest bo blok shranjen takšen, kot je, na tretjem pa bo shranjena kontrolna vsota. Ta kontrolna vsota je poseben primer Reed-Solomonove kode, ki uporablja samo bitno seštevanje. Običajno se izračuna z metodo XOR. Ker je ta metoda simetrična, je mogoče izgubljeni podatkovni blok obnoviti iz drugega podatkovnega bloka in kontrolne vsote. Za vsak blok bo na drugem disku shranjen paritetni blok, ki vsebuje kontrolno vsoto. S tem se poveča redundanca. Vsak disk lahko odpove. Na splošno bo kontrolne vsote hranil en disk, zato bo skupna uporabna zmogljivost enaka zmogljivosti vseh diskov razen enega. Velikost dobljenega logičnega diska bo enaka velikosti vseh diskov skupaj, razen enega diska, ki hrani paritetne informacije.

Seveda je ta način počasnejši od stopnje RAID 1, saj je treba pri vsakem zapisu prebrati vse diske, da se izračunajo in posodobijo paritetne informacije. Bralna zmogljivost RAID 5 je pri enakem številu diskov skoraj tako dobra kot pri RAID 0. Razen paritetnih blokov je porazdelitev podatkov po diskih enaka kot pri RAID 0. RAID 5 je nekoliko počasnejši zato, ker morajo diski preskočiti paritetne bloke.

RAID 5 z okvarjenim diskom bo še naprej deloval. Je v slabšem načinu. RAID 5 v slabšem stanju je lahko zelo počasen. Zato se pogosto doda dodaten disk. Imenuje se vroč rezervni disk. Če disk odpove, se lahko podatki neposredno obnovijo na dodatnem disku. RAID 5 je mogoče precej enostavno izdelati tudi v programski opremi.

Predvsem zaradi težav z zmogljivostjo neuspešnih polj RAID 5 so nekateri strokovnjaki za podatkovne zbirke ustanovili skupino BAARF - Battle Against Any Raid Five.

Če sistem med aktivnim zapisovanjem odpove, lahko pride do neskladnosti paritete traku s podatki. Če tega ne popravite pred odpovedjo diska ali bloka, lahko pride do izgube podatkov. Za rekonstrukcijo manjkajočega bloka v tem traku bo uporabljena nepravilna pariteta. Ta težava je včasih znana kot "pisalna luknja". Predpomnilniki, podprti z baterijo, in podobne tehnike se pogosto uporabljajo za zmanjšanje možnosti, da se to zgodi.

Slike

·        

RAID 0 preprosto postavi različne bloke na različne diske. Ni redundance.

·        

Pri sistemu Raid 1 je vsak blok na obeh diskih

·        

RAID 5 izračuna posebne kontrolne vsote za podatke. Bloki s kontrolno vsoto in bloki s podatki se porazdelijo po vseh diskih.

Manj uporabljene ravni RAID

RAID 2

To se je uporabljalo pri zelo velikih računalnikih. Za uporabo RAID Level 2 so potrebni posebni dragi diski in poseben krmilnik. Podatki se porazdelijo na bitni ravni (vse druge ravni uporabljajo ukrepe na ravni bajtov). Opravijo se posebni izračuni. Podatki so razdeljeni na statična zaporedja bitov. 8 podatkovnih bitov in 2 paritetna bita se združijo. Nato se izračuna Hammingova koda. Fragmenti Hammingove kode se nato porazdelijo po različnih diskih.

RAID 2 je edina raven RAID, ki lahko popravi napake, druge ravni RAID jih lahko le zaznajo. Ko ugotovijo, da potrebne informacije niso smiselne, jih preprosto obnovijo. To se izvede z izračuni, pri čemer se uporabijo informacije na drugih diskih. Če te informacije manjkajo ali so napačne, ne morejo storiti veliko. Ker RAID 2 uporablja Hammingove kode, lahko ugotovi, kateri del informacij je napačen, in popravi samo ta del.

Za delovanje RAID 2 je potrebnih vsaj 10 diskov. Zaradi zapletenosti in potrebe po zelo dragi in posebni strojni opremi se RAID 2 ne uporablja več pogosto.

RAID 3 "razmejitev z namensko pariteto"

Raid stopnje 3 je podoben RAID stopnje 0. Dodan je dodaten disk za shranjevanje paritetnih informacij. To se izvede z bitnim seštevanjem vrednosti bloka na drugih diskih. Paritetne informacije so shranjene na ločenem (namenskem) disku. To ni dobro, saj se v primeru okvare paritetnega diska paritetne informacije izgubijo.

Raven RAID 3 se običajno izvaja z vsaj tremi diski. Nastavitev z dvema diskoma je enaka nastavitvi RAID stopnje 0.

RAID 4 "razmejitev z namensko pariteto"

To je zelo podobno RAID 3, le da se informacije o enakosti izračunavajo za večje bloke in ne za posamezne bajte. To je podobno RAID 5. Za polje RAID 4 so potrebni vsaj trije diski.

RAID 6

Raven RAID 6 ni bila izvirna raven RAID. Polju RAID 5 dodaja dodaten paritetni blok. Potrebuje vsaj štiri diske (dva diska za zmogljivost, dva diska za redundanco). RAID 5 lahko obravnavamo kot poseben primer kode Reed-Solomon. RAID 5 je poseben primer, saj potrebuje samo seštevanje v Galoisovem polju GF(2). To je enostavno narediti z XOR-ji. RAID 6 razširja te izračune. To ni več poseben primer in je treba opraviti vse izračune. Pri RAID 6 se uporablja dodatna kontrolna vsota (imenovana polinom), običajno iz GF(28). S tem pristopom je mogoče zaščititi pred poljubnim številom okvarjenih diskov. RAID 6 je namenjen uporabi dveh kontrolnih vsot za zaščito pred izgubo dveh diskov.

Podobno kot pri RAID 5 so pariteta in podatki za vsak blok na različnih diskih. Tudi dva paritetna bloka sta na različnih diskih.

RAID 6 lahko izvedete na različne načine. Razlikujejo se po zmogljivosti zapisovanja in po tem, koliko izračunov je potrebnih. Hitrejše zapisovanje običajno pomeni, da je potrebnih več izračunov.

RAID 6 je počasnejši od RAID 5, vendar omogoča, da se RAID nadaljuje, če sta odpovedala dva diska. RAID 6 postaja priljubljen, ker omogoča ponovno vzpostavitev polja po odpovedi enega diska, tudi če ima eden od preostalih diskov enega ali več slabih sektorjev.

Slike

·        

RAID 3 je podoben stopnji RAID 0. Dodan je dodaten disk, na katerem je shranjena kontrolna vsota za vsak blok podatkov.

·        

RAID 4 je podoben stopnji RAID 3, vendar izračunava pariteto na večjih blokih podatkov.

·        

RAID 6 je podoben RAID 5, vendar izračunava dve različni kontrolni vsoti. To omogoča odpoved dveh diskov brez izgube podatkov.

Nestandardne ravni RAID

Dvojna pariteta / Diagonalna pariteta

RAID 6 uporablja dva paritetna bloka. Ta se izračunata na poseben način s polinomom. RAID z dvojno pariteto (imenovan tudi RAID z diagonalno pariteto) za vsakega od teh paritetnih blokov uporablja drug polinom. Industrijsko združenje, ki je opredelilo RAID, je nedavno izjavilo, da je RAID z dvojno pariteto drugačna oblika RAID 6.

RAID-DP

RAID-DP je drug način dvojne paritete.

RAID 1.5

RAID 1.5 (ne zamenjujte z RAID 15, ki je drugačen) je lastniška izvedba RAID. Tako kot RAID 1 uporablja le dva diska, vendar omogoča tako razmejitev kot zrcaljenje (podobno kot RAID 10). Večina stvari je narejena v strojni opremi.

RAID 5E, RAID 5EE in RAID 6E

RAID 5E, RAID 5EE in RAID 6E (z dodanim E kot Enhanced) se na splošno nanašajo na različne vrste RAID 5 ali RAID 6 z vročim rezervnim delom. Pri teh izvedbah vroči rezervni pogon ni fizični pogon. Namesto tega obstaja v obliki prostega prostora na diskih. To poveča zmogljivost, vendar pomeni, da vročega rezervnega diska ni mogoče deliti med različnimi polji. To shemo je uvedel IBM ServeRAID okoli leta 2001.

RAID 7

To je lastniška izvedba. Polju RAID 3 ali RAID 4 dodaja predpomnilnik.

Intel Matrix RAID

Nekatere Intelove glavne plošče imajo čip RAID s to funkcijo. Uporablja dva ali tri diske, nato pa jih enakomerno razdeli in oblikuje kombinacijo ravni RAID 0, RAID 1, RAID 5 ali RAID 1+0.

Gonilnik Linux MD RAID

To je ime za gonilnik, ki omogoča uporabo programskega RAID v sistemu Linux. Poleg običajnih ravni RAID 0-6 ima tudi implementacijo RAID 10. Od jedra 2.6.9 je RAID 10 enostopenjski. Izvedba ima nekaj nestandardnih funkcij.

RAID Z

Sun je uvedel datotečni sistem ZFS. Ta datotečni sistem je optimiziran za obdelavo velikih količin podatkov. Vključuje upravitelja logičnih zvezkov. Vključuje tudi funkcijo, imenovano RAID-Z. Izogiba se težavi, imenovani RAID 5 write hole, saj ima politiko copy-on-write: Podatkov ne prepiše neposredno, temveč nove podatke zapiše na novo mesto na disku. Ko je bilo pisanje uspešno, se stari podatki izbrišejo. Pri majhnih zapisih se izogne potrebi po operacijah branje-sprememba-zapisovanje, saj zapisuje samo polne pasove. Majhni bloki so zrcaljeni, namesto da bi bili paritetno zaščiteni, kar je mogoče, ker datotečni sistem pozna način organizacije pomnilnika. Zato lahko po potrebi dodeli dodaten prostor. Obstaja tudi RAID-Z2, ki uporablja dve obliki paritete, da doseže podobne rezultate kot RAID 6: zmožnost preživetja do dveh okvar diska brez izgube podatkov.

Slike

·        

Shema nastavitve RAID DP (Double Parity).

·        

Nastavitev Matrix RAID.

Združevanje ravni RAID

Z RAID lahko različne diske združite v logični disk.Uporabnik vidi samo logični disk. Vsaka od zgoraj navedenih ravni RAID ima dobre in slabe strani. Vendar lahko RAID deluje tudi z logičnimi diski. Tako se lahko ena od zgoraj navedenih ravni RAID uporablja z nizom logičnih diskov. Mnogi ljudje to zapišejo tako, da številke zapišejo skupaj. Včasih vmes zapišejo "+" ali "&". Običajne kombinacije (z uporabo dveh ravni) so naslednje:

  • RAID 0+1: Dve ali več polj RAID 0 se združita v polje RAID 1; To se imenuje zrcaljenje trakov.
  • RAID 1+0: enako kot RAID 0+1, vendar so ravni RAID obrnjene; trak zrcal. Zaradi tega je odpoved diska redkejša kot pri RAID 0+1 zgoraj.
  • RAID 5+0: Več RAID 5 s trakom z RAID 0. V vsakem polju RAID 5 lahko odpove en disk, vendar je to polje RAID 5 edina točka odpovedi; če odpove drug disk tega polja, so vsi podatki polja izgubljeni.
  • RAID 5+1: V primerih, ko je RAID sestavljen iz šestih diskov, lahko odpovedo kateri koli trije (brez izgube podatkov).
  • RAID 6+0: več nizov RAID 6 nad nizom RAID 0; dva diska vsakega polja RAID 6 lahko odpovesta brez izgube podatkov.

S šestimi diski po 300 GB, katerih skupna zmogljivost je 1,8 TB, lahko ustvarite RAID 5 z 1,5 TB uporabnega prostora. V tem polju lahko en disk odpove brez izgube podatkov. Pri RAID 50 se prostor zmanjša na 1,2 TB, vendar lahko odpove en disk vsakega RAID 5, poleg tega pa se opazno poveča zmogljivost. RAID 51 zmanjša uporabni prostor na 900 GB, vendar lahko odpovedo katerikoli trije diski.

·        

RAID 0+1: več polj RAID 0 je združenih z RAID 1.

·        

RAID 1+0: robustnejši kot RAID 0+1; podpira odpovedi več pogonov, če ne odpovesta dva pogona, ki tvorita zrcalo.

·        

RAID 5+1: Pri tem lahko odpovedo kateri koli trije diski, ne da bi prišlo do izgube podatkov.

Izdelava RAID

RAID lahko ustvarite na različne načine. To lahko storite s programsko ali strojno opremo.

Programska oprema RAID

RAID lahko s programsko opremo ustvarite na dva različna načina. Pri programskem RAID-u so diski povezani kot običajni trdi diski. RAID deluje v računalniku. To pomeni, da mora procesor za vsak dostop opraviti tudi izračune za RAID. Izračuni za RAID 0 ali RAID 1 so preprosti. Izračuni za RAID 5, RAID 6 ali eno od kombiniranih ravni RAID pa so lahko zelo zahtevni. Pri programskem RAID-u je samodejno zagon iz polja, ki je odpovedalo, lahko težaven. Nazadnje je način izvedbe RAID v programski opremi odvisen od uporabljenega operacijskega sistema; programskega polja RAID na splošno ni mogoče ponovno sestaviti z drugim operacijskim sistemom. Operacijski sistemi za izdelavo polj RAID običajno uporabljajo particije trdega diska in ne celih trdih diskov.

Strojna oprema RAID

RAID lahko izdelate tudi s strojno opremo. V tem primeru se uporablja poseben diskovni krmilnik; ta krmilna kartica pred operacijskim sistemom in uporabnikom skriva dejstvo, da izvaja RAID. Izračuni informacij o kontrolnih vsotah in drugi izračuni, povezani z RAID, se izvajajo na posebnem mikročipu v tem krmilniku. Tako je RAID neodvisen od operacijskega sistema. Operacijski sistem ne vidi RAID-a, temveč en sam disk. Različni proizvajalci uporabljajo RAID na različne načine. To pomeni, da polja RAID, zgrajenega z enim strojnim krmilnikom RAID, ni mogoče obnoviti z drugim krmilnikom RAID drugega proizvajalca. Nakup strojnih krmilnikov RAID je pogosto drag.

Strojno podprt RAID

To je mešanica med strojno in programsko opremo RAID. Strojno podprt RAID uporablja poseben krmilni čip (kot strojni RAID), vendar ta čip ne more izvajati številnih operacij. Aktiven je le ob zagonu sistema; takoj ko je operacijski sistem v celoti naložen, je ta konfiguracija kot programski RAID. Nekatere matične plošče imajo funkcije RAID za priključene diske; najpogosteje so te funkcije RAID izvedene kot strojno podprt RAID. To pomeni, da je za uporabo teh funkcij RAID in obnovitev po okvari diska potrebna posebna programska oprema.

Različni izrazi, povezani z okvarami strojne opreme

Pri okvarah strojne opreme se uporabljajo različni izrazi:

Stopnja neuspešnosti

Stopnja odpovedi pomeni, kako pogosto sistem odpove. Srednji čas do okvare (MTTF) ali srednji čas med okvarami (MTBF) sistema RAID je enak kot pri njegovih sestavnih delih. Sistem RAID namreč ne more zaščititi pred okvarami posameznih trdih diskov. Vendar pa lahko bolj zapletene vrste RAID (vse, kar presega "striping" ali "concatenation") pomagajo ohraniti podatke nedotaknjene tudi v primeru odpovedi posameznega trdega diska.

Povprečni čas do izgube podatkov

Povprečni čas do izgube podatkov (MTTDL) je povprečni čas, preden pride do izgube podatkov v danem polju. Srednji čas do izgube podatkov določenega RAID-a je lahko daljši ali krajši od srednjega časa do izgube podatkov njegovih trdih diskov. To je odvisno od uporabljene vrste RAID.

Povprečni čas do okrevanja

Polja z redundanco se lahko obnovijo po nekaterih okvarah. Povprečni čas do obnovitve prikazuje, koliko časa je potrebno, da se okvarjeno polje vrne v normalno stanje. K temu se prišteje tako čas zamenjave okvarjenega diskovnega mehanizma kot tudi čas ponovne vzpostavitve polja (tj. repliciranja podatkov zaradi redundance).

Neopravljiva stopnja bitnih napak

Stopnja napak neobnovljivih bitov (UBE) pove, kako dolgo diskovni pogon ne bo mogel obnoviti podatkov po uporabi cikličnih redundančnih kontrolnih kod (CRC) in večkratnih ponovitvah.

Težave z RAID

Obstajajo tudi nekatere težave z idejami ali tehnologijo RAID:

Kasnejše dodajanje diskov

Nekatere ravni RAID omogočajo razširitev polja s preprostim kasnejšim dodajanjem trdih diskov. Informacije, kot so paritetni bloki, so pogosto razpršene na več diskih. Dodajanje diska v polje pomeni, da je potrebna reorganizacija. Takšna reorganizacija je kot ponovna izgradnja polja in lahko traja dolgo časa. Ko je to opravljeno, dodatni prostor morda še ni na voljo, saj je treba o tem obvestiti tako datotečni sistem v polju kot operacijski sistem. Nekateri datotečni sistemi ne podpirajo povečanja po tem, ko so bili ustvarjeni. V takem primeru je treba narediti varnostno kopijo vseh podatkov, ponovno ustvariti polje z novo postavitvijo in nanj obnoviti podatke.

Druga možnost dodajanja pomnilnika je, da ustvarite novo polje in to prepustite upravitelju logičnih zvezkov. Tako lahko povečate skoraj vsak sistem RAID, tudi RAID1 (ki je sam po sebi omejen na dva diska).

Povezane napake

Mehanizem za odpravljanje napak v RAID predpostavlja, da so napake pogonov neodvisne. Izračunati je mogoče, kako pogosto lahko pride do okvare posameznega dela opreme, in urediti polje tako, da je izguba podatkov zelo malo verjetna.

V praksi pa so bili pogoni pogosto kupljeni skupaj. So približno enako stari in so se podobno uporabljali (tako imenovana obraba). Veliko pogonov odpove zaradi mehanskih težav. Starejši kot je pogon, bolj so njegovi mehanski deli obrabljeni. Pri starih mehanskih delih je večja verjetnost, da bodo odpovedali, kot pri mlajših. To pomeni, da okvare pogonov niso več statistično neodvisne. V praksi obstaja možnost, da bo tudi drugi disk odpovedal, še preden bo prvi obnovljen. To pomeni, da lahko v praksi pride do velike izgube podatkov.

Atomičnost

Druga težava, ki se pojavlja tudi pri sistemih RAID, je, da aplikacije pričakujejo tako imenovano atomičnost: V tem primeru se zapišejo vsi podatki ali pa se ne zapiše nobeden. Pisanje podatkov se imenuje transakcija.

V poljih RAID se novi podatki običajno zapišejo na mesto, kjer so bili stari podatki. To je postalo znano kot posodabljanje na mestu. Jim Gray, raziskovalec podatkovnih baz, je leta 1981 napisal članek, v katerem je opisal to težavo.

Zelo malo sistemov za shranjevanje omogoča semantiko atomskega pisanja. Ko se objekt zapiše na disk, naprava za shranjevanje RAID običajno vzporedno zapiše vse kopije objekta. Zelo pogosto je za pisanje podatkov odgovoren samo en procesor. V takem primeru se zapisi podatkov na različne pogone prekrivajo. To je znano kot prekrivajoče se pisanje ali postopno pisanje. Zaradi napake, ki se pojavi med postopkom pisanja, so lahko zato odvečne kopije v različnih stanjih. Še huje, kopije lahko ostanejo v starem ali novem stanju. Pri zapisovanju pa je pogoj, da so izvirni podatki v starem ali novem stanju. To omogoča, da se logična sprememba umakne, vendar le malo sistemov za shranjevanje zagotavlja semantiko atomskega pisanja na disku RAID.

To težavo lahko rešite z uporabo predpomnilnika za pisanje, ki ga podpira baterija, vendar le v primeru izpada napajanja.

Podpora transakcijam ni prisotna v vseh strojnih krmilnikih RAID. Zato jo številni operacijski sistemi vključujejo za zaščito pred izgubo podatkov med prekinjenim pisanjem. Novell Netware je od različice 3.x dalje vključeval sistem za sledenje transakcijam. Microsoft je sledenje transakcijam uvedel s funkcijo dnevnika v sistemu NTFS. Datotečni sistem NetApp WAFL ga rešuje tako, da nikoli ne posodablja podatkov na mestu, enako kot sistem ZFS.

Podatki, ki jih ni mogoče obnoviti

Nekateri sektorji na trdem disku so morda postali neberljivi zaradi napake. Nekatere implementacije RAID lahko to rešijo tako, da podatke premaknejo drugam in sektor na disku označijo kot slab. To se zgodi pri približno 1 bitu na 1015 pri diskovnih pogonih razreda enterprise in 1 bitu na 1014 pri običajnih diskovnih pogonih. Zmogljivosti diskov se nenehno povečujejo. To lahko pomeni, da včasih polja RAID ni mogoče obnoviti, saj se takšna napaka najde, ko se polje obnovi po okvari diska. Nekatere tehnologije, kot je RAID 6, poskušajo rešiti to vprašanje, vendar imajo zelo veliko kazen za pisanje, kar pomeni, da je pisanje podatkov zelo počasno.

Zanesljivost predpomnilnika za pisanje

Diskovni sistem lahko potrdi operacijo pisanja takoj, ko so podatki v predpomnilniku. Ni mu treba čakati, da se podatki fizično zapišejo. Vendar pa lahko vsak izpad električne energije pomeni znatno izgubo podatkov, ki so v čakalni vrsti v takem predpomnilniku.

Pri strojni opremi RAID lahko za zaščito tega predpomnilnika uporabite baterijo. To pogosto reši težavo. Ko pride do izpada napajanja, lahko krmilnik dokonča pisanje predpomnilnika, ko je napajanje ponovno vzpostavljeno. Vendar pa lahko ta rešitev še vedno odpove: baterija se lahko iztroši, napajanje je bilo predolgo izklopljeno, diski so lahko prestavljeni na drug krmilnik, sam krmilnik lahko odpove. Nekateri sistemi lahko redno preverjajo baterijo, vendar pri tem uporabljajo samo baterijo in jo pustijo v stanju, ko ni popolnoma napolnjena.

Združljivost opreme

Formati diskov na različnih krmilnikih RAID niso nujno združljivi. Zato branje polja RAID na različni strojni opremi morda ne bo mogoče. Zaradi tega bo pri okvari strojne opreme, ki ni disk, za obnovitev podatkov morda treba uporabiti identično strojno opremo ali varnostno kopijo.

Kaj RAID zmore in česa ne zmore

Ta vodnik je bil vzet iz niti v forumu, povezanem z RAID. To je bilo storjeno, da bi pomagalo izpostaviti prednosti in slabosti izbire RAID. Namenjen je ljudem, ki želijo izbrati RAID zaradi povečanja zmogljivosti ali redundance. Vsebuje povezave do drugih niti na forumu, ki vsebujejo anekdotične preglede uporabnikov o njihovih izkušnjah s sistemom RAID.

Kaj lahko naredi RAID

  • RAID lahko zaščiti čas delovanja. Ravni RAID 1, 0+1/10, 5 in 6 (in njihove različice, kot sta 50 in 51) nadomestijo mehansko okvaro trdega diska. Tudi po okvari diska je podatke v polju še vedno mogoče uporabljati. Namesto dolgotrajne obnovitve s traku, DVD-ja ali drugega počasnega medija za varnostno kopiranje RAID omogoča obnovitev podatkov na nadomestni disk iz drugih članov polja. Med tem postopkom obnovitve so na voljo uporabnikom v poslabšanem stanju. To je zelo pomembno za podjetja, saj izpadi hitro povzročijo izgubo zaslužka. Za domače uporabnike lahko zaščiti čas delovanja velikih polj za shranjevanje medijev, ki bi v primeru odpovedi diska, ki ni zaščiten z redundanco, zahtevala dolgotrajno obnovitev z več deset DVD-jev ali kar nekaj trakov.
  • RAID lahko v nekaterih aplikacijah poveča zmogljivost. Ravni RAID 0, 5 in 6 uporabljajo nizanje podatkov. To omogoča več vreten za povečanje hitrosti prenosa pri linearnih prenosih. Aplikacije tipa delovne postaje pogosto delajo z velikimi datotekami. Za njih je razporeditev diska po trakovih zelo koristna. Primeri takih aplikacij so tiste, ki uporabljajo video ali zvočne datoteke. Ta zmogljivost je koristna tudi pri varnostnih kopijah med diski. RAID 1 in druge ravni RAID, ki temeljijo na razčlenjevanju, lahko izboljšajo zmogljivost pri vzorcih dostopa z veliko hkratnimi naključnimi dostopi, kot so tisti, ki jih uporablja podatkovna zbirka z več uporabniki.

Česa RAID ne more storiti

  • RAID ne more zaščititi podatkov v polju. Polje RAID ima en datotečni sistem. To ustvarja eno samo točko odpovedi. Temu datotečnemu sistemu se lahko poleg fizične okvare diska zgodi še veliko drugih stvari. RAID ne more zaščititi pred temi viri izgube podatkov. RAID ne bo preprečil uničenja podatkov z virusom. RAID ne bo preprečil poškodb. RAID ne bo rešil podatkov, če jih uporabnik spremeni ali pomotoma izbriše. RAID ne ščiti podatkov pred strojno okvaro katere koli komponente razen fizičnih diskov. RAID ne ščiti podatkov pred naravnimi nesrečami ali nesrečami, ki jih povzroči človek, kot so požari in poplave. Da bi zaščitili podatke, jih je treba varnostno kopirati na izmenljive medije, kot so DVD, trak ali zunanji trdi disk. Varnostno kopijo je treba hraniti na drugem mestu. Samo RAID ne bo preprečil, da bi se nesreča, ko (ne če) se zgodi, spremenila v izgubo podatkov. Katastrof ni mogoče preprečiti, z varnostnimi kopijami pa je mogoče preprečiti izgubo podatkov.
  • RAID ne more poenostaviti obnovitve po nesreči. Pri uporabi enega diska ga lahko uporablja večina operacijskih sistemov, saj so opremljeni s skupnim gonilnikom naprave. Vendar pa večina krmilnikov RAID potrebuje posebne gonilnike. Orodja za obnovo, ki delujejo z enojnimi diski na splošnih krmilnikih, bodo za dostop do podatkov na poljih RAID potrebovala posebne gonilnike. Če so ta orodja za obnovitev slabo kodirana in ne omogočajo dodatnih gonilnikov, potem polje RAID za to orodje za obnovitev verjetno ne bo dostopno.
  • RAID ne more zagotoviti povečanja zmogljivosti v vseh aplikacijah. Ta trditev še posebej velja za tipične uporabnike namiznih aplikacij in igričarje. Pri večini namiznih aplikacij in iger sta bolj kot surova prepustnost pomembni strategija za uporabo medpomnilnika in zmogljivost iskanja diska(-ov). Povečanje neobdelane trajne hitrosti prenosa pri takih uporabnikih ne prinaša velikih koristi, saj je večina datotek, do katerih dostopajo, tako ali tako zelo majhna. Razdelitev diska v pasove z uporabo RAID 0 poveča linearno zmogljivost prenosa, ne pa tudi zmogljivosti varovalne shrambe in iskanja. Zato se pri večini namiznih aplikacij in iger zmogljivost diska z uporabo RAID 0 poveča le malo ali nič, čeprav obstajajo tudi izjeme. Za uporabnike namiznih računalnikov in igralce iger, katerih cilj je visoka zmogljivost, je bolje kupiti hitrejši, večji in dražji en disk kot dva počasnejša/manjša diska v RAID 0. Celo z najnovejšimi, najboljšimi in največjimi diski v RAID-0 se zmogljivost verjetno ne bo povečala za več kot 10 %, pri nekaterih vzorcih dostopa, zlasti pri igrah, pa se lahko zmogljivost zmanjša.
  • RAID je težko prenesti v nov sistem. Z enim samim diskom ga je razmeroma enostavno prenesti v nov sistem. Preprosto ga lahko priključite na nov sistem, če ima na voljo enak vmesnik. Pri polju RAID pa to ni tako enostavno. Obstaja določena vrsta metapodatkov, ki določajo, kako je RAID nastavljen. BIOS RAID mora biti sposoben prebrati te metapodatke, da lahko uspešno sestavi polje in ga omogoči operacijskemu sistemu. Ker proizvajalci krmilnikov RAID za svoje metapodatke uporabljajo različne formate (celo krmilniki različnih družin istega proizvajalca lahko uporabljajo nezdružljive formate metapodatkov), je skoraj nemogoče premakniti polje RAID na drug krmilnik. Pri selitvi polja RAID v nov sistem je treba načrtovati tudi selitev krmilnika. Zaradi priljubljenosti krmilnikov RAID, vgrajenih v matično ploščo, je to zelo težko. Na splošno je mogoče člane polja RAID in krmilnike premakniti skupaj. Programski RAID v sistemih Linux in Windows Server Products lahko zaobide tudi to omejitev, vendar ima programski RAID tudi druge (večinoma povezane z zmogljivostjo).

Primer

Najpogosteje uporabljene ravni RAID so RAID 0, RAID 1 in RAID 5. Predpostavimo, da imamo tri diske s tremi enakimi diski po 1 TB in da je verjetnost odpovedi diska v določenem časovnem obdobju 1 %.

Raven RAID

Uporabna zmogljivost

Verjetnost okvare

v odstotkih

Verjetnost okvare

1 v ... primerih je neuspešen

0

3 TB

2,9701%

34

1

1 TB

0,0001%

1 milijon

5

2 TB

0,0298%

3356


AlegsaOnline.com - 2020 / 2023 - License CC3