Ce este RAID?

RAID este o soluție dezvoltată inițial pentru piața serverului de rețea ca mijloc de a crea un spațiu de stocare mare, la un cost mai mic. În esență, ar necesita mai multe unități de hard disk cu costuri mai mici și le-ați pus împreună printr-un controler pentru a oferi o singură unitate de capacitate mai mare. Acesta este ceea ce reprezintă RAID: o gamă redundantă de unități sau discuri ieftine. Pentru a realiza acest lucru, au fost necesare software specializat și controlori pentru a gestiona datele împărțite între diferitele unități.

În cele din urmă, puterea de procesare a sistemului dvs. informatic standard a permis ca funcțiile să se orienteze către piața calculatoarelor personale .

Acum, stocarea RAID poate fi bazată pe software sau hardware și poate fi utilizată în trei scopuri distincte. Acestea includ capacitatea, securitatea și performanța. Capacitatea este una simplă, care este de obicei implicată în aproape toate tipurile de configurare RAID utilizate. De exemplu, două unități de hard disk pot fi conectate împreună ca o singură unitate la sistemul de operare făcând efectiv o unitate virtuală de două ori mai mare decât capacitatea. Performanța este un alt motiv cheie pentru utilizarea unei configurații RAID pe un computer personal. În același exemplu de utilizare a două unități ca o singură unitate, controlerul poate împărți o bucată de date în două părți și apoi pune fiecare din aceste părți pe o unitate separată. Acest lucru dublează în mod eficient performanța scrisului sau a citirii datelor din sistemul de stocare. În cele din urmă, RAID poate fi folosit pentru securitatea datelor.

Acest lucru se face folosind un spațiu de pe unități pentru a clona în esență datele care sunt scrise la ambele unități. Încă o dată, cu două unități putem face ca datele să fie scrise la ambele unități. Astfel, dacă o unitate eșuează, cealaltă are încă datele.

În funcție de obiectivele matricei de stocare pe care doriți să o puneți pentru sistemul dvs. de calcul, veți folosi unul dintre diferitele niveluri de RAID pentru a atinge aceste trei obiective.

Pentru cei care folosesc hard-disk-uri în calculatorul lor , performanța va fi probabil o problemă mai mare decât capacitatea. Pe de altă parte, cei care utilizează unități de stare solidă vor dori probabil o modalitate de a lua unitățile mai mici și de a le lega împreună pentru a crea o singură unitate mai mare. Deci, haideți să aruncăm o privire la diferitele niveluri de RAID care pot fi utilizate cu un computer personal.

RAID 0

Acesta este cel mai scăzut nivel al RAID-ului și de fapt nu oferă nicio formă de redundanță, motiv pentru care este referit la un nivel 0. În esență, RAID 0 are două sau mai multe unități și le pune împreună pentru a modela o unitate de capacitate mai mare. Acest lucru se realizează printr-un procesor numit striping. Blocurile de date sunt împărțite în bucăți de date și apoi scrise în ordine pe unități. Acest lucru oferă o performanță sporită deoarece datele pot fi scrise simultan pe unități de către controler, înmulțind în mod eficient viteza unităților. Mai jos este un exemplu de cum ar putea funcționa acest lucru pe trei discuri:

Unitatea 1 Unitatea 2 Unitatea 3
Blocul 1 1 2 3
Blocul 2 4 5 6
Blocul 3 7 8 9


Pentru ca RAID 0 să funcționeze eficient pentru creșterea performanțelor sistemului, trebuie să încercați și să aveți unități compatibile. Fiecare unitate ar trebui să aibă aceleași caracteristici de stocare exacte și performanțe.

Dacă nu, atunci capacitatea va fi limitată la un multiplu dintre cele mai mici dintre unități și performanțe până la cel mai lent dintre unități, deoarece trebuie să aștepte ca toate dungile să fie scrise înainte de a trece la setul următor. Este posibil să utilizați unități necorespunzătoare, dar în acest caz o configurare JBOD ar putea fi mai eficientă.

JBOD înseamnă doar o grămadă de unități și, în mod eficient, este doar o colecție de unități care pot fi accesate independent unul de altul, dar apar ca o singură unitate de stocare a sistemului de operare. Acest lucru este obișnuit realizat prin faptul că are o lungime de date între unități. Adesea acest lucru este denumit SPAN sau BIG.

Eficace, operațiunea le vede pe toate ca pe un singur disc, dar blocurile vor fi scrise pe primul disc până când se umple, apoi se va trece la a doua, apoi la a treia etc. Aceasta este utilă pentru adăugarea unei capacități suplimentare într-un sistem informatic existent și cu unități de dimensiuni diferite, dar nu va spori performanța setului de dispozitive.

Cea mai mare problemă cu setările RAID 0 și JBOD este securitatea datelor. Deoarece aveți mai multe unități, șansele de corupere a datelor au crescut deoarece aveți mai multe puncte de eșec . Dacă orice unitate dintr-o matrice RAID 0 nu reușește, toate datele devin inaccesibile. Într-un JBOD, o eșec de unitate va duce la pierderea oricăror date care s-au întâmplat să se afle pe acea unitate. Ca rezultat, cel mai bine este pentru cei care doresc să folosească această metodă de stocare să aibă alte mijloace pentru a face copii de siguranță ale datelor.

RAID 1

Acesta este primul nivel real al RAID, deoarece oferă un nivel complet de redundanță pentru datele stocate pe matrice. Acest lucru se face printr-un proces numit mirroring. Efectiv, toate datele scrise în sistem sunt copiate pe fiecare unitate într-o matrice de nivel 1. Această formă de RAID este de obicei făcută doar cu o pereche de unități deoarece adăugarea mai multor unități nu va adăuga nici o capacitate suplimentară, doar o redundanță. Pentru a da un exemplu mai bun, aici este o diagramă care arată cum ar fi scrisă la două unități:

Unitatea 1 Unitatea 2
Blocul 1 1 1
Blocul 2 2 2
Blocul 3 3 3


Pentru a obține cea mai eficientă utilizare dintr-o configurație RAID 1, sistemul va utiliza din nou unitățile compatibile care au aceeași capacitate și performanță.

Dacă se utilizează unități care nu sunt potrivite, atunci capacitatea matricei va fi egală cu cea mai mică unitate de capacitate din matrice. De exemplu, dacă o unitate de 1 terabyte și o unitate terabyte au fost folosite într-o matrice RAID 1, capacitatea acestei matrice pe sistem ar fi doar un singur terabyte.

Acest nivel de RAID este foarte eficient pentru securitatea datelor, deoarece cele două unități sunt în mod efectiv aceleași. Dacă una dintre cele două unități nu reușește, atunci cealaltă are datele complete ale celuilalt. Problema cu acest tip de configurare este, în general, determinarea unuia dintre unități, deoarece deseori stocarea devine inaccesibilă atunci când una dintre cele două eșuează și nu va fi restaurată în mod corespunzător până când nu este introdusă o unitate nouă în locul acesteia și o recuperare proces este executat. Așa cum am menționat mai sus, nu există nici un câștig de performanță de la acest lucru. De fapt, va exista o ușoară scădere a performanței de la operatorul de comandă pentru RAID.

RAID 1 + 0 sau 10

Aceasta este o combinație oarecum complicată atât a nivelurilor RAID 0, cât și a nivelului 1 . În mod eficient, controlerul va avea nevoie de minimum patru unități pentru a funcționa în acest mod, deoarece ceea ce va face este să faceți două perechi de unități. Primul set de unități este o matrice oglindită care clonează datele dintre cele două. Cel de-al doilea set de unități este, de asemenea, oglindit, dar este înființat să fie banda primei. Aceasta oferă atât redundanța datelor, cât și câștigurile de performanță. Mai jos este un exemplu de modul în care datele vor fi scrise în patru unități folosind acest tip de configurare:

Unitatea 1 Unitatea 2 Unitatea 3 Unitatea 4
Blocul 1 1 1 2 2
Blocul 2 3 3 4 4
Blocul 3 5 5 6 6


Pentru a fi sincer, acesta nu este un mod de RAID dorit de a funcționa pe un sistem informatic. În timp ce nu oferă un anumit impuls de performanță, într-adevăr nu este atât de bun din cauza cantității foarte mari de cheltuieli de pe sistem. În plus, este o risipă uriașă de spațiu, dat fiind că matricea unității va avea cel mult jumătate din capacitatea tuturor unităților combinate. Dacă se utilizează unități care nu sunt potrivite, performanța va fi limitată la cel mai lent dintre unități și capacitatea va fi doar dublă față de cea mai mică unitate.

RAID 5

Acesta este cel mai înalt nivel de RAID care poate fi găsit în sistemele computerizate de consumatori și este o metodă mult mai eficientă de creștere a capacității și a redundanței. Aceasta realizează acest lucru printr-un proces de stripe de date cu paritate. Un minim de trei unități este necesar pentru a face acest lucru, deoarece datele sunt împărțite în benzi pe mai multe unități, dar apoi un bloc de-a lungul benzii este pus deoparte pentru paritate. Pentru a explica acest lucru mai bine, mai întâi să aruncăm o privire asupra modului în care datele ar putea fi scrise pe trei unități:

Unitatea 1 Unitatea 2 Unitatea 3
Blocul 1 1 2 p
Blocul 2 3 p 4
Blocul 3 p 5 6


În esență, controlerul unității ia o bucată de date care trebuie scrisă pe toate unitățile din matrice. Primul bit de date este plasat pe prima unitate, iar al doilea este plasat pe al doilea. Cea de-a treia unitate primește bitul de paritate care este, în esență, o comparație a datelor binare pe primul și al doilea. În matematica binară, aveți doar 0 și 1. Un proces de matematică boolean este făcut pentru a compara biții. Dacă cei doi adaugă un număr par (0 + 0 sau 1 + 1) atunci bitul de paritate va fi zero. Dacă cei doi adaugă un număr impar (1 + 0 sau 0 + 1) atunci bitul de paritate va fi unul. Motivul pentru aceasta este că, dacă una dintre unități nu reușește, controlorul poate apoi să-și dea seama care sunt datele lipsă. De exemplu, dacă unitatea unică nu reușește, lăsând doar două și trei unități, iar unitatea doi are un bloc de date de unul și unitatea trei are un bloc de paritate de unul, atunci blocul de date lipsă de pe unitatea trebuie să fie zero.

Acest lucru oferă o redundanță eficientă a datelor care permite restabilirea tuturor datelor în cazul unei defecțiuni a unității. Acum pentru cele mai multe setări ale consumatorilor, un eșec va duce în continuare la faptul că sistemul nu este, deoarece nu este într-o stare funcțională. Pentru ca sistemul să fie funcțional, este necesar să înlocuiți unitatea defectă cu o unitate nouă. Apoi, procesul de reconstrucție a datelor trebuie efectuat la nivelul controlerului, care va face apoi o funcție booleană inversă pentru a recrea datele de pe unitatea lipsă. Acest lucru poate dura ceva timp, mai ales pentru unități de capacitate mai mare, dar este cel puțin recuperabil.

Acum, capacitatea unei matrice RAID 5 depinde de numărul de unități din matrice și de capacitatea lor. Încă o dată, matricea este restricționată de cea mai mică unitate de capacitate din matrice, deci este mai bine să utilizați unitățile potrivite. Spațiul eficient de stocare este egal cu numărul de unități minus de o dată capacitatea cea mai mică. Deci, în termeni de matematică, este (n-1) * Capacitatemin . Deci, dacă aveți trei unități de 2 GB într-o matrice RAID 5, capacitatea totală ar fi de 4 GB. O altă matrice RAID 5 care folosea patru unități de 2 GB ar avea o capacitate de 6 GB.

Acum performanța pentru RAID 5 este un pic mai complicată decât unele dintre celelalte forme de RAID din cauza procesului boolean care trebuie făcut pentru a crea bitul de paritate atunci când datele sunt scrise pe unități. Aceasta înseamnă că performanța de scriere va fi mai mică decât o matrice RAID 0 cu același număr de unități. Citește performanța, pe de altă parte, nu suferă atât de mult ca scrierea, deoarece procesul boolean nu se face deoarece citește datele drepte din unități.

Problema mare cu toate setările RAID

Am discutat despre avantajele și dezavantajele fiecăruia dintre nivelurile de RAID care pot fi utilizate pe computerele personale, dar există o altă problemă pe care mulți oameni nu o dau seama atunci când vine vorba de crearea setărilor de unități RAID. Înainte ca o configurare RAID să poată fi utilizată, trebuie mai întâi să fie construită fie de software-ul controlerului hardware, fie de software-ul sistemului de operare. Acest lucru inițializează inițial formatul special necesar pentru a urmări corect modul în care datele vor fi scrise și citite pe unitate.

Acest lucru probabil că nu pare a fi o problemă, dar este chiar dacă trebuie să schimbați modul în care doriți să configurați array-ul RAID. De exemplu, spuneți că utilizați date slabe și doriți să adăugați o unitate suplimentară fie pentru un array RAID 0 sau RAID 5. În cele mai multe cazuri, nu veți putea fără reconfigurarea mai întâi a matricei RAID care va elimina, de asemenea, oricare dintre datele stocate în acele unități. Aceasta înseamnă că trebuie să efectuați o copie de rezervă completă a datelor, să adăugați noua unitate, să reconfigurați matricea unității, să formatați arta unității și apoi să restaurați datele originale înapoi în unitate. Acesta poate fi un proces extrem de dureros. Ca rezultat, asigurați-vă că într-adevăr aveți setarea matricea așa cum doriți la prima dată când o faceți.