La Trinakria.it
  Segnala errore sito
Glossario informatico
 
 
RAID
Redundant Array of Inexpensive Disks
batteria ridondante di dischi economici
L'idea consiste nel posizionare diversi dischi entro un singolo contenitore e quindi scrivere i dati su queste unità in modo che se uno o più dischi venissero a mancare le informazioni resterebbero comunque disponibili. I vari dischi sono raggruppati in una singola unità logica che a sua volta viene vista dal server come se fosse una singola unità fisica. La tecnica RAID viene impiegata sia per aumentare la sicurezza sia per ridurre i tempi di accesso al di sotto dei valori fisici tipici di ogni singolo disco presente nella batteria. Questa configurazione può essere realizzata via hardware con un controller specializzato oppure via software unendo tra loro dischi di tipo standard. I tre attributi fondamentali della tecnologia RAID sono: a) si tratta di un insieme di dischi visti dall'utente come un singolo dispositivo logico, b) i dati dell'utente vengono distribuiti fisicamente tra i vari dischi in una maniera ben definita, c) viene aggiunta capacità di disco ridondante in modo da recuperare le informazioni in caso di guasto di un'unità della batteria. Livelli della configurazione RAID Livello 0 Singolo disco oppure dischi multipli che offrono funzioni di data striping (in sostanza si tratta di una configurazione non-RAID) ma nessuna funzione di sicurezza. Il data striping consiste nel distribuire in modo uniforme su tutti i dischi disponibili i dati che compongono il file in da salvare. Non viene eseguita nessuna correzione d'errore con il meccanismo del controllo di parità e il file viene spezzettato in tante parti quanti sono i dischi disponibili e queste porzioni vengono scritte in contemporanea con un tempo di accesso molto inferiore grazie al parallelismo. La dimensione massima dei file registrabili viene dalla somma dei vari dischi che compongono la batteria (disk spanning) visto che l'insieme appare come se fosse un singolo disco fisico. In caso di rottura di un disco tutti i dati che vi sono contenuti vanno irrimediabilmente persi insieme all'usabilità dell'intero disco logico di cui questa unità faceva parte. Le altre unità logiche (definite ai livelli da 1 a 5 della tecnologia RAID) non vengono influenzate, però l'intero sistema entra in fase critica perché non può consentire che si guasti un altro disco. L'eventuale disco di riserva (hot spare) non viene attivato in automatico quando si lavora a livello 0. Livello 1 A questo livello il RAID equivale al mirroring: i dati vengono copiati specularmente da un disco a un altra unità uguale con scrittura simultanea su entrambi delle stesse informazioni. Questo genere di configurazione risulta più veloce di quanto lo sarebbe un singolo disco (la ricerca delle informazioni viene suddivisa tipicamente metà su un disco e metà sull'altro) e si ha la garanzia al 100% della salvaguardia delle informazioni in caso di rottura di uno dei due dischi. Esiste anche un RAID di livello 1 Enhanced utilizzato da alcuni fornitori, come IBM, che consiste nell'abbinare lo striping dei dati al mirroring. Il file viene suddiviso in tante porzioni quanti sono i dischi disponibili così da avere un parallelismo di scrittura e di ricerca come nel RAID livello 0, solo che in questo caso la scrittura viene ripetuta due volte, una per la copia originale e una per la copia in mirroring, entrambe distribuite uniformemente su tutti i dischi con la sola differenza che la copia di mirroring viene registrata con lo sfasamento di un disco: se la prima porzione del file si trova sul disco 1 la prima porzione della copia di mirroring dello stesso file sarà sul disco 2 e sul disco 1 troveremo invece l'ultima porzione della copia di mirroring (ad esempio la quarta nel caso ci siano quattro dischi), quale coda della completa rotazione tra i dischi. Alcuni fornitori chiamano impropriamente questa configurazione RAID di livello 6. Livello 2 A questo livello le informazioni vengono distribuite sui vari dischi usando una tecnica chiamata bit interleave. Il primo disco della batteria contiene il primo bit, il secondo disco contiene il secondo bit e via di questo passo. Al posto del bit si può usare un intero byte come unità minima, ma la sostanza non cambia. Questo approccio ha una certa validità per le applicazioni che prevedono lettura sequenziale delle informazioni, come la modellazione grafica, ma richiede parecchi dischi per funzionare adeguatamente, inoltre è necessario riservare alcuni dischi per i codici di correzione d'errore oppure la verifica di parità. La lettura è molto lenta poiché bisogna continuamente assemblare e disassemblare i vari pacchetti leggendo bit da tutti i dischi. E' un sistema originariamente progettato per i mainframe e i minicomputer che non si adatta ai server di rete e ai PC. Non si presta affatto ai sistemi transazionali poiché non può gestire diverse richieste simultanee. Livello 3 Questo livello corregge alcuni difetti del livello 2 distribuendo le informazioni su dischi diversi un bit alla volta, ma utilizzando un solo disco per i codici di correzione d'errore oppure per la verifica di parità. In questa situazione le testine dei dischi sono sincronizzate il che significa che le operazioni di lettura e scrittura possono svolgersi ad alta velocità. Si tratta di un approccio ottimo per trasferire grandi quantità di dati oppure per letture sequenziali, ma conserva i limiti del livello 2 per quel che riguarda le letture casuali (fino a 15 volte più lento rispetto agli stessi dischi usanti senza configurazione RAID). Il sistema deve accedere in sincrono a tutti i dischi per recuperare il file. Livello 4 Tutti codici di errore o il controllo di parità vengono mantenuti su un singolo disco, come nel livello 3, ma i dati vengono distribuiti sui vari dischi un blocco anziché un bit alla volta. La dimensione dei blocchi corrisponde alle informazioni trasferite con una sola operazione di accesso. Diventa possibile eseguire letture multiple anche casuali e le prestazioni in lettura aumentano considerevolmente. In scrittura si viene invece limitati dal fatto che esiste un solo disco per i codici di parità comuni a tutti i dischi al quale bisogna accedere per qualsiasi operazione di aggiornamento. La capacità complessiva della batteria è n-1 dove n è il numero di dischi, indipendentemente dalle dimensioni della batteria (più dischi ci sono, più il sistema diventa conveniente). Supponendo di avere quattro unità da 1 GByte ciascuna, la capacità complessiva del RAID sarebbe di 3 GByte. Livello 5 Qui tutti i dischi contengono sia i dati sia le informazioni di parità oppure i codici di correzione degli errori. La distribuzione dei dati in blocchi in dischi multipli secondo una progressione sequenziale (blocco 1 nel disco 1, blocco 2 nel disco 2, eccetera) e lo stesso accade, con lo sfasamento di un disco, per le informazioni di controllo. In tal modo si elimina il collo di bottiglia del disco singolo nelle operazioni di scrittura e diventa possibile eseguire diverse transazioni in parallelo. La capacità massima disponibile è sempre n-1, dove n è il numero dei dischi che compongono la batteria, indipendentemente dalle dimensioni della batteria stessa. Livello 6 Distribuzione dei dati a blocchi sui vari dischi con impiego di due dischi non dedicati per le informazioni di controllo (codici di correzione dell'errore o parità). Questo è considerato il più alto dei livelli di ridondanza poiché dedica due dischi alla conservazione delle informazioni di sicurezza. La capacità totale diventa n-2 e questo approccio è consigliato solo per batterie di grandi dimensioni. Il concetto di RAID è stato definito per la prima volta nel 1987 da Paterson, Gibson e Katz a Berkeley nell'Università della California, a Berkeley che studiarono un modo per far apparire più dischi come se fossero uno solo (livello 0 della configurazione RAID). Le prestazioni erano migliori rispetto a quelle ottenibili con un singolo grande disco di capacità equivalente, ma l'affidabilità non era alta visto che basta che si rompa un solo disco per rendere inutilizzabile l'intera batteria. Per questo motivo fu introdotta una certa ridondanza di elementi e i suoi sviluppatori definirono anche i livelli RAID da 1 a 5, in seguito l'industria aggiunse il livello 6. Nessuna configurazione è superiore all'altra, ma ciascuna offre funzionalità diverse. Il RAID 0 viene impiegato nelle workstation per ottenere le massime prestazioni possibili senza garantire alcuna ridondanza. Gli altri sei livelli vengono utilizzati sui server per garantire prestazioni migliori rispetto all'impiego di un singolo disco e protezione dei dati, grazie alla ridondanza. Tipicamente i RAID vengono realizzati con dischi SCSI.


 Indietro