- Î. Ce este RAID? De ce o folosesc mereu? A. RAID este modalitatea de a combina mai multe discuri într-o singură unitate pentru a crește viteza și / sau fiabilitatea. Există mai multe tipuri și implementări diferite de RAID, fiecare cu propriile sale avantaje și dezavantaje. De exemplu, plasarea unei copii a acelorași date pe două discuri (numite oglindire disc. Sau RAID nivelul 1), citirea vitezei de citire alternativ de la fiecare oglinzi disc poate fi îmbunătățită. În medie, fiecare disc este mai puțin ocupat. procesează doar jumătate din operațiile de citire (pentru două discuri) sau 1/3 (pentru trei discuri) etc. În plus, oglinda poate crește fiabilitatea: dacă un disc nu reușește, un alt disc conține o copie a datelor. Diferitele modalități de combinare a discurilor într-una, sunt marcate de nivelurile RAID. poate oferi o mai mare eficiență de stocare decât simpla oglindire sau latenta (timpul de acces), sau performanța de lățime de bandă (rata de transfer) se poate modifica, pentru a citi sau scrie în același timp, susținut de concediere - este util să se ocupe de eșecuri.
Deși RAID poate proteja împotriva eșecului, nu protejează împotriva erorilor de operator și administrator (umane) sau a pierderii programelor cauzate de erori (eventual, de asemenea, erori în implementarea reală a RAID). Rețeaua este plină de povesti tragice despre administratorii de sistem care au instalat incorect RAID și au pierdut toate datele. RAID - nu înlocuiește necesitatea unor copii de rezervă frecvente, programate regulat.
Software-RAID este un set de module de kernel, împreună cu utilitarele de management care implementează RAID software-ul pur și nu necesită hardware neobișnuit. Subsistemul RAID Linux este implementat în kernel ca un strat deasupra driver-elor de disc de nivel inferior (pentru dispozitivele IDE, SCSI și Paraport) și o interfață de dispozitiv bloc. Sistemul de fișiere, fie ext2fs, DOS-FAT sau altul, funcționează în partea de sus a interfeței bloc. Software-ul RAID, în natura sa programatică, tinde să fie mai flexibil decât implementarea hardware. Dezavantajul este că este nevoie de mai mult timp CPU, comparativ cu implementarea hardware. Desigur, prețul nu este depășit. În plus, software-ul RAID are o caracteristică distinctivă importantă: funcționează pe baza partițiilor în care mai multe partiții separate sunt asamblate împreună pentru a crea partiții RAID. Acest lucru este diferit de majoritatea soluțiilor hardware RAID, care combină întreaga discuri într-o matrice. În hardware-ul RAID, faptul că matricea RAID este transparentă pentru sistemul de operare simplifică gestionarea. În software, există mai multe opțiuni de configurare și opțiuni care confundă cazul.
Următoarele descriu diferența dintre nivelurile RAID în contextul implementării software-ului RAID în Linux.
- RAID-consolidarea liniară simplă a partițiilor pentru a crea o partiție virtuală mare. Acest lucru este valabil dacă aveți mai multe discuri mici și doriți să creați o partiție mare. Această combinație nu oferă redundanță și, de fapt, reduce fiabilitatea generală: dacă unul dintre discuri eșuează, întreaga partiție nu reușește.
RAID-1 este, de asemenea, numit "mirroring" ("mirroring"). Două (sau mai multe) secțiuni, toate de aceeași dimensiune, conțin fiecare o copie exactă a tuturor datelor, blocul din bloc. Oglindirea oferă o protecție puternică împotriva defecțiunilor discului: dacă un disc nu reușește, există un altul cu o copie exactă a datelor. Oglindirea poate, de asemenea, să contribuie la creșterea performanțelor subsistemului I / O, deoarece solicitările de citire pot fi partajate pe mai multe discuri. Din păcate, oglindirea este, de asemenea, mai puțin eficientă din punct de vedere al capacității: două partiții în oglindă nu pot ține mai mult decât o singură partiție.
Striping este conceptul de bază al tuturor celorlalte niveluri RAID. banda este o secvență continuă de blocuri de discuri. banda poate fi de dimensiunea unui singur bloc de disc, sau poate fi compusă din mii. Dispozitivele RAID partajează partițiile pe disc; diferite niveluri RAID diferă în modul în care organizează banda și modul în care datele sunt plasate pe ele. Interacțiunea dintre dungă-dimensiune, dimensiunea tipică a fișierelor de pe sistem, și poziția lor pe disc - determină performanța generală a subsistemului RAID.
RAID-0 este similar cu RAID-line, cu excepția faptului că componentele partiției sunt împărțite în dungi și apoi alternate. Ca RAID-linear, rezultatul este o partiție virtuală mare. La fel ca la RAID-liniar, acest lucru nu implică redundanță și, de asemenea, reduce fiabilitatea generală: eșecul unei unități va afecta totul. RAID-0 cere adesea să sporească performanța în comparație cu RAID-linear. Cu toate acestea, acest lucru poate sau nu poate fi adevărat, în funcție de caracteristicile sistemului de fișiere, de dimensiunea tipică a fișierului în comparație cu dimensiunea benzii și de tipul de încărcare de lucru. Sistemul de fișiere ext2fs dispersează deja fișierele pe partiție, încercând să minimizeze fragmentarea. Deci, la cel mai simplu nivel, orice acces poate fi făcut la unul din mai multe discuri și, prin urmare, stripingul pe multe discuri oferă un real avantaj. Cu toate acestea, există o diferență de performanță, depinde de date, de volumul de lucru și de dimensiunea benzii.
RAID-4 suporta RAID-0, dar necesită o partiție suplimentară pentru publicarea informațiilor despre paritate. Paritatea este utilizată pentru a produce redundanță: în cazul în care se defectează un disc, datele de pe discurile rămase pot fi folosite pentru a reconstitui datele de pe disc a eșuat. Se obține discuri de date N și un disc cu paritate, banda de paritate este calculată astfel încât - prin luarea de o bandă de la fiecare disc cu datele, și XOR-yatsya împreună. Astfel, capacitatea de (N + 1) ROM drive RAID-4 matrice este N, care este mult mai bună decât oglindire (N + 1) unități și este aproape la fel de bun ca RAID-0 pe N. Rețineți că, pentru N = 1, unde un disc cu date și o paritate RAID-4 este echivalent cu oglindirea, fiecare dintre cele două unități fiind copiate între ele. Cu toate acestea, RAID-4 nu oferă performanță de citire a oglinzilor și are o performanță redusă de scriere. În termeni simpli, aceasta se datorează faptului că actualizarea parității necesită citirea parității vechi, înainte ca noua paritate să poată fi calculată și scrisă. Cu un număr mare de operațiuni de scriere, un disc de paritate poate deveni un "bottleneck", deoarece Fiecare operație de scriere trebuie să acceseze un disc de paritate.
RAID-5 osvobodzhden de „strangulare“, atunci când se scrie pe un RAID-4 stocare banda de paritate pe fiecare disc. Cu toate acestea, scrie performanță nu este încă la fel de bun ca și pentru oglindire, ca banda de paritate trebuie să fie citite în continuare și XOR-ena înainte de înregistrare. De asemenea, citirea performanței nu este la fel de bună ca și oglindirea, deoarece după aceea există doar o copie a datelor, nu două sau mai multe. Avantajul principal al unui RAID-5 peste oglindire este că oferă redundanță și protecție împotriva eșec disc unic, în același timp, oferă mult mai mare capacitate de stocare, atunci când este utilizat cu trei sau mai multe discuri.
RAID-2 și RAID-3 sunt rareori utilizate și, într-o oarecare măsură, au devenit caduce pentru tehnologiile discului modern. RAID-2 este similar cu RAID-4, dar plasează informații ECC în loc de paritate. Deoarece toate discurile moderne pun în aplicare ECC în sine, acest lucru oferă puțină protecție suplimentară. RAID-2 poate oferi o integritate mai mare a datelor dacă se pierde puterea în timpul înregistrării; totuși, bateriile de rezervă și oprirea curată pot oferi aceleași beneficii. RAID-3 este similar cu RAID-4, cu excepția faptului că utilizează cea mai mică dimensiune posibilă a benzii. Ca rezultat, orice operație de citire va include toate discurile, făcând dificilă / imposibilă suprapunerea solicitărilor I / O. Pentru a evita întârzierile în așteptarea rotației, RAID-3 necesită sincronizarea tuturor axelor discului. Cele mai multe drive-uri moderne au capacitatea de a sincroniza axurile, sau, în cazul în care au, nu au conectori, cabluri, și documentația producătorului de necesare. Nici RAID-2, nici RAID-3 nu este suportat de drivere software RAID în Linux.
Alte niveluri de RAID sunt definite de diferiți cercetători și furnizori. Multe dintre ele reprezintă impunerea unui tip de raid pe deasupra celuilalt. Unele necesită echipament special, în timp ce altele sunt protejate prin brevete. Nu există nicio schemă de numire pentru aceste niveluri. Uneori avantajele acestor sisteme sunt mici sau cel puțin nu se manifestă până când sistemul nu este prea încărcat. Excludând plasarea RAID-1 peste RAID-0 / liniar, Software-ul RAID al Linux nu suportă alte variante.