La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Ingegneria Dalmine “Impianti Informatici” RAID - 1 Dischi RAID M.Arrigoni Neri & P. Borghese 13 /05/13.

Presentazioni simili


Presentazione sul tema: "Ingegneria Dalmine “Impianti Informatici” RAID - 1 Dischi RAID M.Arrigoni Neri & P. Borghese 13 /05/13."— Transcript della presentazione:

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


Scaricare ppt "Ingegneria Dalmine “Impianti Informatici” RAID - 1 Dischi RAID M.Arrigoni Neri & P. Borghese 13 /05/13."

Presentazioni simili


Annunci Google