Dischi magnetici e scheduling del braccio del disco Pag. 216 – 224
I dischi RAID Pag. 227 – 231 (saltare RAID2 e RAID3)
RAID 0 - striping Striping a blocchi Minimo dischi: 2 Efficienza spazio: n/n (lo spazio logico è il 100% dello spazio fisico) Tolleranza ai guasti: 0 (nessuna) Beneficio in lettura: nX Beneficio in scrittura: nX Raid 0 con 2 dischiRaid 0 con 4 dischi n = numero dischi impiegati X = velocità (transfer rate teorico) singolo disco
RAID 0 con due dischi Scrittura della sequenza di blocchi: A B C D E F G H
RAID 1 - Mirroring Mirroring Minimo dischi: 2 (di solito non più di 2) Efficienza spazio: 1/n (Es.: con 2 dischi lo spazio logico è il 50% dello spazio fisico) Tolleranza ai guasti: (n-1) (Es.: con 2 dischi tollera il guasto di 1 disco) Beneficio in lettura: nX Beneficio in scrittura: 1X (nessun beneficio) Raid 1 con 2 dischi n = numero dischi impiegati X = velocità (transfer rate teorico) singolo disco
RAID 1 con due dischi Scrittura della sequenza di blocchi: A B C D
Confronto: RAID 0 -RAID 1 con due dischi Scrittura della sequenza di blocchi: A B C DScrittura della sequenza di blocchi: A B C D E F G H Velocità: 2X Tolleranza ai guasti: nessuna Velocità: 1X Tolleranza ai guasti: 1 disco
RAID 10 (1+0) Mirroring + Striping Minimo dischi: 4 Efficienza spazio: n/2 (lo spazio logico è il 50% dello spazio fisico) Tolleranza ai guasti: min=1, max=n/2 Beneficio in lettura: nX Beneficio in scrittura: n/2 X Raid 10 con 4 dischi n = numero dischi impiegati X = velocità (transfer rate teorico) singolo disco
RAID 10 con 4 dischi Scrittura della sequenza di blocchi: A D B E C F
RAID 4 – Striping a blocchi con 1 disco di parità Striping a blocchi, 1 disco dedicato alla parità Minimo dischi: 3 Efficienza spazio: (n-1)/n (Es.: con 5 dischi lo spazio logico è 4/5 dello spazio fisico) Tolleranza ai guasti: 1 disco (le informazioni di parità consentono di ricostruire i dati del disco perso) Beneficio in lettura: (n-1)X Beneficio in scrittura: (n-1)X (ottimisticamente, poiché il disco di parità è un collo di bottiglia) Raid 4 con cinque dischi n = numero dischi impiegati X = velocità (transfer rate teorico) singolo disco
RAID 4 con tre dischi Scrittura della sequenza di blocchi: A B C D Disco parità Disco dati
RAID 5 – Striping a blocchi, parità distribuita Striping a blocchi, parità distribuita su tutti i dischi (si evita il collo di bottiglia del RAID4) Minimo dischi: 3 Efficienza spazio: (n-1)/n (Es.: con 5 dischi lo spazio logico è 4/5 dello spazio fisico) Tolleranza ai guasti: 1 disco (le informazioni di parità consentono di ricostruire i dati del disco perso) Beneficio in lettura: (n-1)X Beneficio in scrittura: (n-1)X Es.: Raid 5 con cinque dischi n = numero dischi impiegati X = velocità (transfer rate teorico) singolo disco
RAID 6 – Striping a blocchi, doppia parità distribuita Striping a blocchi, doppia parità distribuita su tutti i dischi Minimo dischi: 4 Efficienza spazio: (n-2)/n (Es.: con 5 dischi lo spazio logico è 3/5 dello spazio fisico) Tolleranza ai guasti: 2 dischi Beneficio in lettura: (n-2)X Beneficio in scrittura: (n-2)X (molto teorico) Es.: Raid 6 con cinque dischi n = numero dischi impiegati X = velocità (transfer rate teorico) singolo disco
Disk Disk Disk Disk Parity Disk Disk Disk Disk3xxxxxxxx Disk Parity Disk Disk Disk Disk Disk Parity Disk Uso della parità per recuperare i dati (RAID 4,5,6) I bit di parità sono ottenuti facendo lo XOR (ovvero la somma senza riporto) dei bit dei dischi dati. Guasto di un disco. I bit non sono più leggibili. I dati del disco guasto possono essere ricostruiti facendo lo XOR dei bit presenti sui dischi dati e sul disco di parità.
Piramide: costi / affidabilità / velocità CostiSicurezza dati Velocità
Possibili modalità di implementazione del RAID Software: sistema operativo (es. Windows Server, Linux) Hardware: controller apposito (scheda aggiuntiva oppure controller integrato su scheda madre). Utilizza comunque le risorse di sistema (RAM, CPU) per le elaborazioni. Hardware totalmente dedicato. Utilizza risorse proprie dedicate. Sono tipicamente i cosiddetti NAS (Network Attached Storage). La prima implementazione è la meno efficiente (e meno costosa), l’ultima è la più efficiente, ma più costosa.