Come funziona
Un array RAID combina diversi dischi in uno solo per ottenere capacità, velocità o tolleranza agli errori e quasi mai tutti e tre contemporaneamente. Ogni livello risolve questo impegno in modo diverso: ci sono livelli che distribuiscono i dati senza salvare altro, altri che scrivono copie complete e altri che calcolano le parità per poter ricostruire ciò che è andato perduto.
Il calcolatore prende il numero di dischi, la loro capacità e il livello scelto, e restituisce quanta capacità è effettivamente rimasta per i dati, quanta ridondanza è occupata, quanti dischi possono guastarsi senza perdere informazioni e quali prestazioni approssimative si ottengono. La capacità è indicata nelle unità decimali utilizzate dai produttori e nelle unità binarie riportate dal sistema operativo, da qui l'eterna sensazione che il disco venga fornito con meno di quanto indicato sulla confezione.
Stima inoltre la durata della ricostruzione e la probabilità di riscontrare un errore di lettura irreversibile durante la sua durata, che è il punto in cui molti array a parità singola alla fine falliscono. Il confronto finale calcola tutti i livelli con lo stesso hardware, per vedere a colpo d'occhio cosa si guadagna e cosa si perde con ciascuno di essi.
Esempi
8 × 4 TB · RAID 624 TBDue degli otto dischi vanno in doppia parità, quindi ne restano sei per i dati: 24 TB decimali, che il sistema operativo mostrerà come 21,8 TiB. L'efficienza è del 75% e l'array tollera il guasto di due dischi qualsiasi.8 × 4 TB · RAID 1016 TBCon gli stessi dischi lo specchio lascia solo metà della capacità. In cambio, scrive al doppio della velocità di RAID 6 e ricostruisce copiando un singolo disco invece di leggere i restanti sette.5 × 4 TB · RAID 572 %È la probabilità di incontrare un errore di lettura irreversibile durante la ricostruzione di un disco danneggiato, con i dischi desktop che presentano 1 errore ogni 10^14 bit. Devi leggere un intero spazio di 16 TB e, in RAID 5, qualsiasi errore durante quella lettura non ha nessun posto dove ripararsi.12 × 8 TB · RAID 6064 TBDodici dischi divisi in due gruppi da sei: ogni gruppo perde due dischi nella sua doppia parità, quindi ne restano otto per i dati. Viene sacrificata una maggiore capacità rispetto a RAID 6, ma la ricostruzione legge solo i cinque dischi del gruppo interessato anziché gli undici dell'array.Casi d'uso
- Decidi quante unità acquistare e quali dimensioni per raggiungere la capacità necessaria per un NAS o un file server.
- Confronta i livelli prima di creare la disposizione, quando puoi ancora scegliere, perché cambiare livello in seguito significa quasi sempre rifarlo da zero.
- Spiega a un cliente o a un capo perché otto unità da 4 TB non ti danno 32 TB di spazio utilizzabile.
- Stimare il numero di ore in cui un array viene esposto durante la ricostruzione di un disco, per pianificare la modifica in una finestra di basso utilizzo.
- Giustificare il passaggio da RAID 5 a RAID 6 in un array di dischi di grandi dimensioni mostrando il rischio di ricostruzione.
- Calcola il costo effettivo per terabyte utilizzabile di diverse combinazioni e livelli di dischi prima di firmare l'acquisto.
Domande frequenti
Perché il sistema operativo mostra una capacità inferiore a quella stimata?
Perché non parlano la stessa lingua. I produttori vendono in unità decimali, dove un TB è un trilione di byte, e la maggior parte dei sistemi operativi riporta in unità binarie, dove un TiB è 2^40 byte – circa il 9% più grande. Un disco da 4 TB appare come 3,64 TiB senza che manchi un solo byte. La calcolatrice mostra le due cifre con precisione in modo che la differenza non sia sorprendente. A ciò si aggiunge ciò che riserva il file system, che dipende da quale si utilizza.
RAID 5 o RAID 6?
Dipende dalla dimensione dei dischi e da quanti ce ne sono. RAID 5 sacrifica un singolo disco e tollera un singolo errore; Il problema è che, durante la ricostruzione, l'array rimane senza alcuna protezione e tutti i dischi sopravvissuti devono essere letti da un capo all'altro, cosa che con i dischi multi-terabyte può richiedere giorni. RAID 6 sacrifica un altro disco ma subisce un secondo guasto proprio in quel momento critico. Con dischi da 4 TB o più o array di otto dischi o più, RAID 6 è la scelta ragionevole.
Cos'è la penalità di scrittura?
È il numero di operazioni sul disco fisico che costa ciascuna scrittura logica. In RAID 0 è 1, perché è scritto e basta. Nei mirror vale 2, perché gli stessi dati vanno su due dischi. In RAID 5 è 4: devi leggere i vecchi dati, leggere la vecchia parità, scrivere i nuovi dati e scrivere la nuova parità. In RAID 6 è 6, perché ci sono due parità. Ecco perché un array con parità può avere letture eccellenti e scritture casuali molto scarse, ed è per questo che i database con molte scritture di solito vanno su RAID 10.
Quanti dischi supporta effettivamente RAID 10?
Uno garantito e, se sei fortunato, fino alla metà dell'importo. RAID 10 crea mirror a coppie e distribuisce i dati tra di loro: finché i guasti ricadono su mirror diversi, l'array è ancora vivo, ma se i due dischi che si guastano sono la stessa coppia, tutto è perduto. Con otto dischi potresti perderne quattro e andare avanti, oppure perderne due e rimanere senza nulla. Ecco perché la calcolatrice mostra entrambe le cifre e non è mai consigliabile pianificare con quella ottimistica.
Quando è appropriato RAID 50 o RAID 60?
Quando ci sono così tanti dischi che un singolo gruppo di parità diventa ingombrante. La divisione di dodici o ventiquattro dischi in più gruppi accorcia la ricostruzione, poiché viene letto solo il gruppo in cui si è verificato il guasto del disco e non l'intero array, e consente inoltre di tollerare un errore per gruppo invece di uno solo nell'intero array. Il prezzo è che a ogni gruppo viene lasciata la propria parità: più gruppi ci sono, meno capacità utilizzabile. Si tratta di livelli di controller del server o di recinzione dell'unità, non di un NAS a quattro alloggiamenti.
Cosa succede se i dischi hanno dimensioni diverse?
In un RAID classico, tutti i dischi si comportano come se avessero le dimensioni di quello più piccolo, e ciò che avanza su quelli grandi rimane inutilizzato. Ecco perché il calcolatore funziona con un'unica dimensione: se hai dischi misti, carica quello più piccolo e otterrai la reale capacità dell'array. Alcuni sistemi di archiviazione, come diversi NAS domestici o file system con propria ridondanza, sanno come sfruttare lo spazio in eccesso, ma non seguono più le regole del RAID tradizionale.
Un disco hot spare aggiunge tolleranza agli errori?
Non aggiunge fallimenti tollerati, aggiunge velocità di reazione. Un hot spare è collegato e gira senza dati, in attesa che un disco si rilasci in modo che la ricostruzione possa avviarsi da sola, in pochi minuti e non quando qualcuno passa accanto al rack. Poiché il momento più pericoloso di un fix è proprio quello che va dal fallimento alla fine della ricostruzione, accorciare quel lasso di tempo vale molto. Naturalmente occupa uno spazio e si paga come qualsiasi altro disco, ed è per questo che il calcolatore lo sottrae all'efficienza.
Che cos'è un errore di lettura irreversibile e perché rovina una ricostruzione?
È un settore che il disco non riesce a leggere nemmeno con i propri codici di correzione. Le schede tecniche lo dichiarano come una tariffa: le unità desktop solitamente indicano meno di 1 ogni 10^14 bit letti, le unità NAS 1 ogni 10^15 e le unità aziendali SAS 1 ogni 10^16. Nell'uso quotidiano è quasi impercettibile, ma una ricostruzione ti costringe a leggere per intero tutti i dischi sopravvissuti, ed è allora che il conteggio diventa imbarazzante: in un array con una singola parità, un singolo errore su quella lettura massiccia significa perdita di dati. Con la doppia parità, invece, si ricostruisce il settore con la seconda e non succede nulla.
Il RAID sostituisce i backup?
No, ed è l'equivoco più costoso sullo storage. Il RAID protegge dal guasto fisico di un disco e da nient'altro: una cancellazione accidentale, un file danneggiato dall'applicazione, un ransomware, un furto, un incendio o una fonte che prende tutti i dischi contemporaneamente vengono replicati o persi equamente in tutto l'array. RAID è alta disponibilità, ovvero continua a funzionare mentre un disco viene modificato; il backup è in grado di tornare indietro. Entrambi sono necessari.
I valori di IOPS e velocità sono quelli che andrò a misurare?
Costituiscono un tetto teorico, utile per confrontare i livelli tra loro. Presuppongono che il carico sia distribuito uniformemente su tutti i dischi e che né il controller, né la sua cache, né il bus, né il file system entrino nella coda. In pratica, un controller con cache protetta dalla batteria può nascondere gran parte della penalità di scrittura e una ricostruzione in corso può ridurre la metà delle prestazioni. Usa i numeri per decidere il livello, non per promettere cifre.