Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoOnorato Pace Modificato 8 anni fa
1
Ingegneria Dalmine “Impianti Informatici” RAID - 1 Dischi RAID M.Arrigoni Neri & P. Borghese 13 /05/13
2
Ingegneria Dalmine “Impianti Informatici” RAID - 2 indice dischi RAID caratteristiche delle tipologie (livelli) di RAID prestazioni affidabilità qualche esempio di calcolo
3
Ingegneria Dalmine “Impianti Informatici” RAID - 3 http://www.ecs.umass.edu/ece/koren/architecture/Raid/raidhome.html a questo indirizzo trovate molte informazioni interessanti compresi: tool di calcolo dell’efficienza di storage tool per la reliability
4
Ingegneria Dalmine “Impianti Informatici” RAID - 4 Redundant Arrays of Independent (Inexpensive) Disks indipendentiunico disco logico più dischi fisici indipendenti visti come un unico disco logico di grande capacità ed elevate prestazioni striping parallelo i dati sono distribuiti su più dischi (striping) che sono acceduti in parallelo ottenendo: elevato transfer rate elevato transfer rate per accessi che movimentano grandi quantità di dati (operazioni di I/O pesanti) elevato I/O rate elevato I/O rate per accessi in parallelo a piccole quantità di dati (operazioni di I/O leggere) load balancing load balancing tra i vari dischi in modo automatico si utilizzano due tecniche antitetiche stripingprestazioni striping dei dati: per aumentare le prestazioni ridondanzaaffidabilità ridondanza: per aumentare l’affidabilità
5
Ingegneria Dalmine “Impianti Informatici” RAID - 5 Redundant Arrays of Independent (Inexpensive) Disks (cont.) possono essere realizzati sia con hardware dedicato sia con software che usa hardware standard (esistono anche soluzioni ibride) soluzioni software soluzioni software richiedono costi aggiuntivi (cicli di CPU) soluzioni hardware richiedono unità di controllo specializzate che eseguono i calcoli di parità; hanno in genere prestazioni migliori (dipendenti dalla dimensione della cache e da quanto rapidamente i dati vengono scaricati sui dischi); hot swapping supportano hot swapping (i dischi possono essere sostituiti e ricostruiti anche in modo automatico mentre il sistema è in esercizio)
6
Ingegneria Dalmine “Impianti Informatici” RAID - 6 parallelismo di una operazione di I/O virtualizzazione dell’I/O trasparente i dati sono distribuiti su più dischi, in modo trasparente rispetto all’utente che richiede l’operazione e li vede come residenti su un unico disco di grande capacità ed efficienza ABCDEFGH AB.GH EF CD adapter dischi fisici DISK ARRAY DISK ARRAY esempio 2 byte interleaving aumento delle prestazioni disco logico ABCDEFGH
7
Ingegneria Dalmine “Impianti Informatici” RAID - 7 striping round robin striping: tecnica di suddivisione dei dati che logicamente appaiono come scritti sequenzialmente (un vettore, un file,... ) in segmenti (unità di stripe: bit, byte, blocchi) che vengono scritti su più dischi fisici con un algoritmo ciclico (round robin) unità di stripe unità di stripe: il più piccolo segmento di dati contigui che può essere letto (scritto) da (su) un disco in ogni accesso stripe width stripe width: numero di dischi usati dall’algoritmo di striping (non coincide necessariamente col numero di dischi fisici nell’array) più richieste indipendenti vengono eseguite in parallelo su dischi diversi si riduce il tempo di accodamento delle richieste di I/O ai dischi una singola richiesta di I/O per blocchi multipli può essere servita da più dischi che operano in modo coordinato transfer rate il parallelismo aumenta il transfer rate (numero di byte trasferiti al secondo) per richiesta e, se i dispositivi sono sincronizzati, si riduce la latenza effettiva data striping
8
Ingegneria Dalmine “Impianti Informatici” RAID - 8 stripe la dimensione dell’unità di stripe è una caratteristica importante per le prestazioni: prefetching una unità piccola può dare luogo a singole richieste che si distribuiscono su più dischi con un aumento del numero di operazioni di I/O e di dischi occupati, il prefetching è meno efficace dal momento che dati che sarebbero contigui su un disco si trovano fisicamente dispersi e mescolati con quelli di altri dischi; access skew d’altronde così diminuisce la probabilità di avere un sottoinsieme di dischi con utilizzo asimmetrico (access skew) si riduce l’estensione dei seek queste osservazioni spiegano qualitativamente la forma della curva del tempo di risposta dell’operazione di I/O in funzione della unità di stripe l’unità fisica di I/O è la stripe unit non l’intera stripe data striping (cont.)
9
Ingegneria Dalmine “Impianti Informatici” RAID - 9 parallelismo e affidabilità (reliability) maggiori minoremaggiore più elevato è il numero di dischi dell’array, maggiori sono i benefici prestazionali ma minore è l’affidabilità dell’intero disk array (cioè maggiore è la probabilità di un guasto) per questo motivo viene introdotta laridondanza se un blocco (o un intero disco fisico) è corrotto (o si è guastato) può essere ricostruito dalle informazioni ridondanti presenti sugli altri dischi un array di 100 dischi ha probabilità di guastarsi uguale a 100 volte quella di un singolo disco
10
Ingegneria Dalmine “Impianti Informatici” RAID - 10 parallelismo e affidabilità (reliability) (cont.) se un disco ha un MTTF (Mean Time To Failure) di 200.000 ore (~23 anni) un array di 100 dischi avrà un MTTF di 2.000 ore (~ 3 mesi) ridondanza ridondanza dei dati scritti: permette la correzione/ricostruzione di eventuali errori/perdite di dati con tecniche di codici a correzione di errore che utilizzano informazioni ridondanti scritte su dischi diversi da quelli sui quali vengono scritti i dati originari le operazioni di scrittura devono aggiornare anche le informazioni ridondanti, quindi sono generalmente più lente delle tipiche operazioni di write
11
Ingegneria Dalmine “Impianti Informatici” RAID - 11 esempio di ricostruzione del dato 202guasto10 202810 dati ridondanti Disco 3Disco 2Disco 1 guasto guasto = 20 – (10 + 2) = 8 (somma aritmetica) 00guasto1 0011 paritàDisco 3Disco 2Disco 1 parità parità = somma modulo 2 guasto guasto = parità + (1+ 0) = 1 (somma logica)
12
Ingegneria Dalmine “Impianti Informatici” RAID - 12 tipi di RAID la maggior parte dei RAID può essere classificata secondo le seguenti caratteristiche: granularitàinterleaving la granularità di interleaving dei dati (unità di stripe) il metodo per il calcolo delle informazioni ridondanti scelta del metodo per distribuire le informazioni ridondanti tra i dischi dell’array limitato distribuzione delle informazioni ridondanti su un numero limitato di dischi uniforme utilizzo di tutti i dischi disponibili in modo uniforme per allocare le informazioni ridondanti (più difficile da realizzare ma ottimizza il bilanciamento del carico)
13
Ingegneria Dalmine “Impianti Informatici” RAID - 13 data interleaving: fine grained interleaved i dati sono interleaved in piccole unità in modo tale che tutte le richieste di I/O (indipendentemente dalle loro dimensioni) possono utilizzare tutti i dischi dell’array più elevato transfer rate per tutte le richieste di I/O una sola richiesta logica di I/O può essere servita ad ogni istante di tempo (perché vengono utilizzati molti dischi) tutti i dischi possono perdere parecchio tempo per motivi di posizionamento ad ogni richiesta
14
Ingegneria Dalmine “Impianti Informatici” RAID - 14 data interleaving: coarse grained interleaved i dati sono interleaved in (relativamente) grandi unità in modo tale che tutte le richieste di I/O di piccole dimensioni necessitano soltanto di pochi dischi mentre grandi richieste di I/O possono utilizzare tutti i dischi dell’array piccole richieste di I/O piccole possono essere eseguite in modo concorrente grandi richieste di I/O grandi possono avere elevato transfer rate in quanto usano molti dischi in parallelo
15
Ingegneria Dalmine “Impianti Informatici” RAID - 15 tipologie di RAID
16
Ingegneria Dalmine “Impianti Informatici” RAID - 16 i livelli di RAID RAID 0 striping (manca ridondanza) RAID 1 mirroring (completa duplicazione) RAID 0+1 RAID 1+0 (ibrido livelli annidati) RAID 2 bit interleaving (non usato) RAID 3 byte interleaving - ridondanza (disco di parità) RAID 4 block interleaving - ridondanza (dischi di parità) RAID 5 block interleaving - ridondanza (blocchi di parità distribuiti) - il più usato RAID 5+0 (ibrido livelli annidati) RAID 6 maggiore ridondanza (tollera 2 dischi guasti) RAID 7 (soluzioni proprietarie)
17
Ingegneria Dalmine “Impianti Informatici” RAID - 17 RAID level 0: striping, no ridondanza i dati scritti su un disco logico sono suddivisi in blocchi sequenziali e distribuiti tra i dischi fisici con un algoritmo di striping richiede minimo 2 drive costiminimi massima capacità per i dati, senza ridondanza (costi minimi) massimeprestazioni massime prestazioni (parallelismo di dischi e canali) massimeprestazioni write massime prestazioni di write (non esistono dati ridondanti da aggiornare) non si possono usare dischi “hot spares” bassaaffidabilità senza correzione di errori, no fault tolerant (bassa affidabilità) Block 8 Block 7 Block 6 Block 5 Stripe 2 Block 4 Block 3 Block 2 Block 1 Stripe 1 Disco 4Disco 3Disco 2Disco 1 dati disk array 4 dischi fisici configurati come un unico disco logico RAID 0 usato nei server di dati read-only
18
Ingegneria Dalmine “Impianti Informatici” RAID - 18 RAID level 1: mirroring duplicati i dati di un disco vengono tutti duplicati integralmente su un altro disco richiede minimo 2 drive alta affidabilità; se un disco si guasta si accede al duplicato read read veloci (se un disco è occupato si legge dall’altro) costi elevati (si utilizza solo il 50% della capacità fisica per dati utili) disk array - 2 dischi dati dati duplicati Block 3 Stripe 3 Block 2 Stripe 2 Block 1 Stripe 1 Disco 2Disco 1
19
Ingegneria Dalmine “Impianti Informatici” RAID - 19 RAID level 0 + 1 prima viene effettuato lo striping (livello 0) poi viene effettuato il mirroring (livello 1) elevate prestazioni richiede un minimo di 4 drive il guasto di un disco porta nella situazione RAID 0 overhead elevato (duplicazione dischi) stripe width
20
Ingegneria Dalmine “Impianti Informatici” RAID - 20 RAID level 1 + 0 prima viene effettuato il mirroring (livello 1) poi viene effettuato lo striping (livello 0) stripe width elevata affidabilità combinata con elevate prestazioni richiede un minimo di 4 drive fault tolerance stessa fault tolerance di RAID 1 impiegato in data base ad elevato carico (write veloci)
21
Ingegneria Dalmine “Impianti Informatici” RAID - 21 schema RAID 0, 1, 0+1, 1+0 A1 A3 A5 A7 A2 A4 A6 A8 RAID 0 A1 A2 A3 A4 A1 A2 A3 A4 RAID 1 A1 A4 B1 B4 A2 A5 B2 B5 A3 A6 B3 B6 A1 A4 B1 B4 A2 A5 B2 B5 A3 A6 B3 B6 RAID 0 RAID 1 RAID 0+1 A1 A4 B1 B4 A1 A4 B1 B4 RAID 1 A2 A5 B2 B5 A2 A5 B2 B5 A3 A6 B3 B6 A3 A6 B3 B6 RAID 0 RAID 1+0 A1, B1,... rappresenta un blocco di dati
22
Ingegneria Dalmine “Impianti Informatici” RAID - 22 confronto livelli 0+1, 1+0 la disposizione dei blocchi è identica se non per i dischi che sono in un diverso ordine alcuni controller 0+1 combinano in un’unica operazione striping e mirroring 0+1 non tollera due guasti simultanei (eccetto nel caso in cui interessino la stessa stripe) single point of failure nel caso di guasto a un singolo disco, il dato mancante è recuperato dall’altro gruppo RAID 1, ogni meccanismo dell’altra stripe è un single point of failure il ripristino di un disco richiede la partecipazione di tutti i dischi dell’array 1+0 single point of failure un disco per ogni gruppo RAID 1 può guastarsi ma se non riparato, il suo mirror diviene single point of failure dell’intero array
23
Ingegneria Dalmine “Impianti Informatici” RAID - 23 RAID level 2 bit interleaved parity (ramo morto dell’evoluzione) assunzione: non si conosce quale è il dato errato correzione di errori (Hamming code) del tipo usato nelle memorie 4 dischi dati 3 dischi ridondanti (un disco in meno del mirroring) num. dischi ridondanti: proporzionale a log num.dischi (con 32 dischi ne occorrono 7 di parità) si usano blocchi di parità per sottoinsiemi di dati sovrapposti molti dischi ridondanti sono necessari per individuare il disco guasto, un solo disco è necessario per ripristinare i dati perduti in lettura viene verificata la correttezza dei dati e corretti gli errori su un singolo drive dati dischi ridondanti
24
Ingegneria Dalmine “Impianti Informatici” RAID - 24 RAID level 3 bit or byte interleaved parity assunzione: si conosce quale è il disco guasto i bit di un dato vengono distribuiti tra i vari dischi un solo disco per i bit di parità adatto per applicazioni che richiedono elevata banda ma medio I/O rate una sola richiesta di I/O viene eseguita per volta ogni read accede a tutti i dischi dati ogni write accede a tutti i dischi dati ed al disco di parità disco ridondante dedicato alla parità dati
25
Ingegneria Dalmine “Impianti Informatici” RAID - 25 RAID level 4: block interleaved parity i dati sono distribuiti in blocchi read inferiori ad un blocco usano un solo disco le write devono scrivere i nuovi dati, leggere i vecchi dati e parità, calcolare il nuovo blocco di parità e scriverlo bottleneck un solo disco per la ridondanza (acceduto ad ogni write) diventa facilmente bottleneck si possono usare dischi hot spares due array RAID4 guasto due dischi sono guasti contemporaneamente parità datidiscoridondantededicato
26
Ingegneria Dalmine “Impianti Informatici” RAID - 26 RAID level 4 - esempio 5 dischi fisici, uno usato per i dati ridondanti scrittura dei blocchi dati e di parità alta velocità (aggregata) di trasferimento in lettura - ridotta velocità di scrittura per la necessità di scrivere il blocco di parità Parity 9-12 Block 12 Block 11 Block 10 Block 9 Stripe 3 Parity 5-8 Block 8 Block 7 Block 6 Block 5 Stripe 2 Parity 1-4 Block 4 Block 3 Block 2 Block 1 Stripe 1 Disco 5 ridondante Disco 4Disco 3Disco 2Disco 1
27
Ingegneria Dalmine “Impianti Informatici” RAID - 27 RAID level 5: block interleaved distributed parity è la soluzione più adottata e versatile: massimi vantaggi (prestazioni e affidabilità) con minimi costi (limitata perdita di capacità, un solo disco) i blocchi di parità sono distribuiti uniformemente su tutti i dischi fisici (no bottleneck) le write sono più lente dei RAID0 e RAID1 le read sono più veloci dei RAID1 (parallelismo) load balancing load balancing su tutti i dischi due due dischi guasti array RAID5 guastoparità dati
28
Ingegneria Dalmine “Impianti Informatici” RAID - 28 RAID level 5: esempio Block 11mo metodo esecuzione di una write nel Block 1 (1mo metodo) Block 234 1) read Block 2,3 e 4 Parity Block1-4Block1 2) calcolo nuovo Parity Block1-4 col nuovo Block1 Block 1Parity Block 1-4 3) write Block 1 e Parity Block 1-4 Block 12 Block 11 Parity 9-12 Block 10 Block 9 Stripe 3 Block 8 Parity 5-8 Block 7 Block 6 Block 5 Stripe 2 Parity 1-4 Block 4 Block 3 Block 2 Block 1 Stripe 1 Disco 5Disco 4Disco 3Disco 2Disco 1 5 dischi fisici configurati come un disco logico RAID5 la distribuzione dei blocchi dati e di parità è:
29
Ingegneria Dalmine “Impianti Informatici” RAID - 29 RAID level 5: esempio (cont.) Block 1 2do metodo: read-modify-write esecuzione di una write nel Block 1 (2do metodo: read-modify-write) Block 1 Parity 1-4 1) read old Block 1, old Parity 1-4 Parity 1-4 old Block 1, new Block 1, old Parity 1-4 2) calcolo del new Parity 1-4 da old Block 1, new Block 1, old Parity 1-4 newBlock 1Parity Block 1-4 3) write new Block 1 e Parity Block 1-4 Block 12 Block 11 Parity 9-12 Block 10 Block 9 Stripe 3 Block 8 Parity 5-8 Block 7 Block 6 Block 5 Stripe 2 Parity 1-4 Block 4 Block 3 Block 2 Block 1 Stripe 1 Disco 5Disco 4Disco 3Disco 2Disco 1
30
Ingegneria Dalmine “Impianti Informatici” RAID - 30 RAID level 5: esempio (cont.) new Parity 1-4 old Block1, old Parity 1-4, new Block1 WRITE: calcolo new Parity 1-4 da old Block1, old Parity 1-4, new Block1 011100111011011 new 110100111011110 old Parity 1-4 Block 4 Block 3 Block 2 Block 1 stripe 1 Disco 5Disco 4Disco 3Disco 2Disco 1011 READ : I blocchi di parità non sono acceduti nell’operazione di lettura. Tuttavia vengono letti se un settore dà luogo a un errore CRC (cyclic redundancy check), in questo caso il settore errato viene ricostruito dai rimanenti blocchi della stripe e dal blocco di parità
31
Ingegneria Dalmine “Impianti Informatici” RAID - 31 schema RAID 4, 5, 5+0 A1 B1 C1 D1 A2 B2 C2 D2 RAID 4 A3 B3 C3 D3 Ap Bp Cp Dp A1 B1 C1 Dp A2 B2 Cp D1 RAID 5 A3 Bp C2 D2 Ap B3 C3 D3 A1 B1 Cp D1 A2 Bp C1 D2 Ap B2 C2 Dp A3 B3 Cp D3 A4 Bp C3 D4 Ap B4 C4 Dp A5 B5 Cp D5 A6 Bp C5 D6 Ap B6 C6 Dp RAID 0 RAID 5+0 A1, B1,... rappresenta un blocco di dati Ap,... un blocco di parità
32
Ingegneria Dalmine “Impianti Informatici” RAID - 32 RAID level 6 fault tolerance estensione di RAID 5 ma con maggiore fault tolerance due sistemi di parità (P+Q) distribuiti e indipendenti tollera il guasto simultaneo di 2 dischi elevato overhead per calcolo della parità richiede N + 2 dischi prestazioni povere in scrittura adatto per applicazioni molto critiche difficile da realizzare
33
Ingegneria Dalmine “Impianti Informatici” RAID - 33 schema RAID 6 A1 B1 C1 Dp A2 B2 Cp Dq RAID 6 A3 Bp Cq D1 Ap Bq C2 D2 Aq B3 C3 D3 A1, B1,... rappresenta un blocco di dati Ap, Aq,... un blocco di parità inefficiente per un numero piccolo di dischi, ma al crescere di questi la perdita di capacità diviene meno importante e aumenta la probabilità di due guasti simultanei diagonale esistono anche altri metodi di calcolo di una doppia parità detta diagonale in cui la seconda parità è calcolata da blocchi diversi da quelli usati per la prima
34
Ingegneria Dalmine “Impianti Informatici” RAID - 34 criteri di scelta del livello di RAID Prestazioni I/O di scrittura I/O di lettura tempi di recovery parallelismo Affidabilità Fault-tolerance correzione errori ridondanza duplicazione Costi sfruttamento della capacità fisica tipi di soluzione caratteristiche controller
35
Ingegneria Dalmine “Impianti Informatici” RAID - 35 criteri di scelta del livello di RAID (cont.) i dischi RAID non proteggono da guasti multipli dei dischi (tranne liv. 6) i dischi RAID non proteggono da guasti multipli dei dischi (tranne liv. 6) regolari operazioni di back-up permettono di ricostruire dati persi non dovuti a guasti di dischi (errori umani, di software di hardware) regolari operazioni di back-up permettono di ricostruire dati persi non dovuti a guasti di dischi (errori umani, di software di hardware)
36
Ingegneria Dalmine “Impianti Informatici” RAID - 36 prestazioni RAID
37
Ingegneria Dalmine “Impianti Informatici” RAID - 37 RAID 0: modello semplificato di striping b: dimensione della richiesta : flusso di richieste su: dimensione blocco m: stripe width (no. dischi) D: numero di dischi per operazione D = b/su D rappresenta il flusso totale di operazioni generato dall’algoritmo di striping flusso di richieste per disco = D/m stripe di m dischi D dischi per operazione tempocontroller tempodisco
38
Ingegneria Dalmine “Impianti Informatici” RAID - 38 RcRd il tempo di risposta dell’operazione di I/O è la somma del tempo di controller Rc e del massimo dei tempi di operazione disco Rd sc: tempo di servizio del controller tempo di risposta R = S/(1- S) = S/(1-U) (coda M/M/1) Rc = sc / (1- sc) valore medio del max(Rd), dipende dal tipo di distribuzione e comunque cresce col numero D di dischi esponenziale se esponenziale la prima operazione termina in Rd / D, la seconda dopo Rd / (D-1) dalla prima e così via Val.medio del max(Rd) = Rd (1 + 1/2 + 1/3 +... 1/D) uniforme se uniforme (fra 0 e 2Rd) max(Rd) = 2Rd D / (D+1) RAID 0: modello semplificato di striping (cont.)
39
Ingegneria Dalmine “Impianti Informatici” RAID - 39 uno storage è composto da 10 dischi configurati in RAID 0, con le seguenti caratteristiche: avg. seek time: 5ms velocità di rotazione: 7200 RPM avg. transfer rate: 8 MB/sec dimensione blocco = stripe unit: 1 KB stripe width: 4 dischi dimensione media di un file: 400 KB tempo minimo di accesso a un file si vuole calcolare il tempo minimo di accesso a un file: tempo medio di accesso a un blocco = seek + latenza + trasferimento = 5 + (60 1000/7200)/2 + 1000/(8 1024) = 5 + 4.17 + 0.12 = 9.29 ms tempo di accesso al file in sequenza: 400 9.29/1000 = 3.716 sec 0.929 sec tempo minimo (4 blocchi alla volta): 3.716/4 = 0.929 sec esercizio 1: prestazioni RAID 0 (modello semplificato)
40
Ingegneria Dalmine “Impianti Informatici” RAID - 40 per il calcolo del tempo di accesso abbiamo ipotizzato: tempo di controller nullo tempo di CPU nullo (o sovrapposto a quello di I/O) non esistono altri processi contemporanei a quello considerato i tempi di accesso ai blocchi sono costanti e perfettamente sincronizzati se supponiamo invece che: il tempo di seek abbia un massimo di 9 ms il tempo di latenza sia al massimo una rotazione: 8.33 ms allora il tempo massimo di accesso ad un blocco diviene: 17.45 ms se il tempo di trasferimento del gruppo di 4 blocchi si avvicina a quello massimo, i tempi vanno così ricalcolati: tempo massimo di accesso al file in sequenza: 400 17.45/1000 = 6.98 sec 1.745 sec tempo massimo di accesso al file (4 blocchi alla volta): 1.745 sec esercizio 1: osservazioni
41
Ingegneria Dalmine “Impianti Informatici” RAID - 41 esercizio 2: prestazioni RAID 1 (modello semplificato) RAID 1: mirror su due dischi siano: s: tempo medio di servizio operazione di I/O : numero di operazioni al secondo r / w = 3: rapporto fra read e write = r + w = r (1 + 1/3) = 4/3 r - situazione iniziale (un disco) se introduciamo un disco mirror le write si raddoppiano: = r + 2· w = r (1 + 2/3) = 5/3 r RAID1 (flusso di I/O su 2 dischi) = r /2 + w = 5/6 r RAID1 (tasso di I/O per disco) la lettura avviene da un solo disco; la scrittura viene eseguita su entrambi e termina quando è completata l’ultima operazione
42
Ingegneria Dalmine “Impianti Informatici” RAID - 42 esercizio 2 (cont.) lettura (modello M/M/2) abbiamo due serventi (dischi) scrittura viene eseguita contemporaneamente sui due dischi, si conclude quando termina la seconda operazione un modo per calcolare il tempo medio per completare una scrittura
43
Ingegneria Dalmine “Impianti Informatici” RAID - 43 esercizio 2 (cont.) i tempi medi di risposta della soluzione RAID 1 dipendono fortemente dal rapporto read/write e sono tanto più favorevoli quanto più questo è maggiore U = 4/3 r s; U(RAID) = 5/6 r s perciò: a parità di carico (numero read/sec) se U è l’utilizzo iniziale del disco, allora: 8 U(RAID) = 5 U a parità di utilizzo (su tutti i dischi): 8 r = 5 r (RAID) ( r è riferito alle sole read e il rapporto r/w vale 3/1)
44
Ingegneria Dalmine “Impianti Informatici” RAID - 44 affidabilità RAID
45
Ingegneria Dalmine “Impianti Informatici” RAID - 45 metriche utilizzate : Mean Time To Failure MTTF 1 : Mean Time To Failure, tempo medio che intercorre prima che un disco si guasti Mean Time To Data Loss irrimediabile MTTDL n : Mean Time To Data Loss, tempo medio prima che si guasti un numero di dischi dell’array di n dischi sufficiente a causare la perdita irrimediabile di dati l’affidabilità di un RAID livello 0 con n dischi è bassa, infatti: = MTTF 1 / n MTTDL n = MTTF 1 / n
46
Ingegneria Dalmine “Impianti Informatici” RAID - 46 MTTF - MTTDL di n dischi assumendo che i tempi tra due guasti successivi siano distribuiti esponenzialmente: MTTF (array) = MTTF (disco) / numero dischi Esercizio 3: MTTDL RAID 0 MTTF(disco) = 1000 gg; n = 8 MTTR = 10 gg MTTDL = MTTF(disco) / n = 125 gg Nota: MTTDL non dipende da MTTR solo la disponibilità dipende da MTTR
47
Ingegneria Dalmine “Impianti Informatici” RAID - 47 MTTF - MTTDL di n dischi (cont.) P(array RAID 1 guasto) = 1/MTTDL = P(1° guasto) P(2° guasto < MTTR) Esercizio 4: MTTDL RAID 1 MTTF(disco) = 1.000 gg; numero totale di dischi = 16 (= 2 8) MTTR = 10 gg P(1° guasto) = n / MTTF(disco) = 16 / 1000 P(2° guasto: si guasta il disco mirror del 1°) = MTTR / MTTF MTTDL = 1/(16/1000 10/1000) = 6250 gg Nota: si considera MTTDL il tempo medio alla perdita di un dato su un qualunque disco dell’array (anche se gli altri sono raggiungibili) lo stesso calcolo vale anche per RAID 1 + 0
48
Ingegneria Dalmine “Impianti Informatici” RAID - 48 MTTF - MTTDL di n dischi (cont.) P(array RAID 1 guasto) = 1/MTTDL = P(1° guasto) P(2° guasto < MTTR) Esercizio 5: MTTDL RAID 0 + 1 MTTF(disco) = 1000 gg; numero totale di dischi = 16 (= 2 8) MTTR = 10 gg P(1° guasto) = n / MTTF(disco) = 16 / 1000 P(2° guasto: si guasta un disco nell’altro gruppo mirror) = MTTR / (MTTF 2/n) MTTDL = 1/(16/1000 10 8/1000) = 781 gg
49
Ingegneria Dalmine “Impianti Informatici” RAID - 49 guasto di un gruppo di parità G: numero di dischi per gruppo di parità un gruppo si guasta effettivamente se si guasta un secondo disco durante l’intervallo di tempo (MTTR) necessario alla riparazione del primo
50
Ingegneria Dalmine “Impianti Informatici” RAID - 50 calcolo MTTDL di un array RAID con parità allora: N è il numero totale di dischi dell’array N/G il numero di gruppi in modo analogo se ci fossero due dischi di parità per gruppo - caso RAID 6 (cioè i dati si perdono se si guasta anche un terzo disco)
51
Ingegneria Dalmine “Impianti Informatici” RAID - 51 esercizio 6: calcolo MTTDL di un RAID 5 N=25 dischi totali 5 gruppi da G=5 dischi ogni gruppo ha un disco ridondante MTTF(disk)=1000 giorni, MTTR(disk)=10 giorni MTTF (disco) MTTF (disco): Mean Time To Failure di un disco MTTR (disco) MTTR (disco): Mean Time To Repair di un disco MTTDL (RAID5) MTTDL (RAID5): Mean Time To Failure di un RAID5
52
Ingegneria Dalmine “Impianti Informatici” RAID - 52 esercizio 6 (cont.) prob. che uno dei 5 dischi di un gruppo si guasti: prob. che uno dei rimanenti 4 dischi di un gruppo si guasti durante i 10 giorni di riparazione del primo disco guasto:
53
Ingegneria Dalmine “Impianti Informatici” RAID - 53 probabilità che uno tra i 5 gruppi sia guasto esercizio 6 (cont.)
54
Ingegneria Dalmine “Impianti Informatici” RAID - 54 esercizio 6: osservazione il calcolo appena fatto si riferisce più propriamente al caso di RAID 5 + 0 ipotizziamo infatti di partire da 20 dischi (di identiche caratteristiche di affidabilità) aggiungendo un disco possiamo costruire un array RAID 5, MTTDL(RAID 5) = MTTF 2 / (21 20 MTTR) aggiungendo invece 5 dischi possiamo costruire un array RAID 5 + 0, MTTDL(RAID 5 + 0) = MTTF 2 / (25 4 MTTR) concludendo: con un costo di altri 4 dischi otteniamo una migliore reliability: MTTDL(RAID 5 + 0) / MTTDL(RAID 5) = 21/5 = 4.2
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.