Title: Redundant Array of Inexpensive Disks
1Redundant Array of Inexpensive Disks
- Pourquoi le RAID ?
- Les principes de base
- Les modèles RAID
- Comparaison des modèles
- Conclusion
2Pourquoi le RAID ?
- Proposé en 1987 par luniversité de Berkeley
- 3 axes damélioration de lexistant...
- Coût
- Performances
- Disponibilité des données
- difficiles à concilier en même temps
3Principes de base
4Amélioration des performances
- Utilisation de plusieurs disques pour
paralléliser les accès (data striping) - Les informations sont réparties automatiquement
sur le groupe de disques - Le système dexploitation ou le SGBD voient un
seul disque logique
5Performances le data stripping
bloc bloc de données destiné à être stocké sur
un disque physique
bloc 1
bloc 2
Disque logique
bloc 3
bloc 4
Stripe ensemble de blocs de même niveau
bloc 1
bloc 2
bloc 3
Disques physiques
bloc 4
- 2 possibilités selon le profil de lapplication
- Optimisation du taux de transfert (unité E/S
applicative bloc) pour application
transactionnelle -gt plusieurs dE/S de petite
taille - Optimisation du taux dE/S (unité E/S stripe)
pour application multimédia -gt 1 E/S de grosse
taille
6Inconvénient du data stripping
Le MTTF (Mean Time To Failure) décroît en
fonction du nombre de composants
Avec MMTTF dun composant n nombre de
composants
si tous les composants ont le même MTTF, cas dun
disk array formé de disques identiques.
Léquation ci-dessus ce simplifie en
Exemple un ensemble de 10 disques dun MTTF de
200 000 heures (environ 23 ans) aura un MTTF
global de 200 000 / 10 20 000 heures (soit un
peu plus de 2 ans). Lutilisation de multiples
disques, si elle améliore les performances,
augmente donc le risque dindisponibilité.
7Disponibilité redondance des données par
duplication
bloc 1
Disque logique
bloc 2
bloc 3
bloc 4
Disque miroir
bloc 1
bloc 1
Disques physiques
bloc 2
bloc 2
bloc 3
bloc 3
bloc 4
bloc 4
- Principe du miroir
- Les données sont dupliquées intégralement sur un
2ème disque - Avec un décalage pour éviter une panne simultanée
8Disponibilité redondance des données par
contrôle de parité
bloc 1
Disque logique
bloc 2
bloc 3
bloc 4
bloc 1
bloc P
bloc 2
bloc 3
bloc 4
Disques physiques
bloc_P bloc_1 XOR bloc_2 XOR bloc_3
Les propriétés du ou exclusif font que cette
relation est équivalente à Bloc_1 bloc_P XOR
bloc_2 XOR bloc_3 et ainsi de suite.On est donc
capable de reconstituer linformation de
nimporte quel disque à partir de celle des
autres.
9Contrôle de parité reconstitution
bloc_1 01011101 XOR bloc_2
11101011 XOR bloc_3 01010101 -------------------
------------- bloc_P 11100011
Si le disque 2 tombe, on reconstruit
linformation perdueà laide des 2 autres
disques et du disque de parité
bloc_1 01011101 XOR bloc_3
01010101 XOR bloc_P 11100011 ------------------
-------------- bloc_2 11101011
10Inconvénients du contrôle de parité
- On ne peut perdre quun seul disque
- Dans le cas de la mise à jour il faut modifier la
parité
- Exemple bloc_1 est modifié en bloc_1. Il faut
- Lire lancienne valeur de bloc_1
- Lire lancienne parité
- Calculer la nouvelle parité bloc_1 XOR bloc_1
XOR bloc_P - Écrire la nouvelle parité
- Écrire la nouvelle valeur de bloc 1
- On doit faire 4 accès disques !
11Modèles RAID
12Les modèles de base sans parité
bloc 1
RAID 0 (data stripping)
bloc 2
Disque logique
bloc 3
bloc 4
bloc 1
bloc 2
bloc 3
Disques physiques
bloc 4
bloc 1
Disque logique
bloc 2
bloc 3
bloc 4
RAID 1 (miroir)
bloc 1
bloc 1
Disques physiques
bloc 2
bloc 2
bloc 3
bloc 3
bloc 4
bloc 4
13Les modèles de base à parité fixe
bloc 1
RAID 3 et 4
Disque logique
bloc 2
bloc 3
bloc 4
bloc 1
bloc P
bloc 3
bloc 2
bloc 4
Disques physiques
Parité fixe
- Un disque est dédié à la parité.
- Unité dentrée / sortie 1 stripe (RAID 3) ou 1
bloc (RAID 4) - Dans le cas du RAID 4, il devient un véritable
goulet détranglement en écriture. - Cet inconvénient nexiste pas en RAID 3 puisquon
modifie de toute façon lensemble des blocs.
14Les modèles de base à parité tournante
bloc D
RAID 5
Disque logique
bloc D
bloc D
bloc D
bloc P
bloc D
bloc D
bloc D
bloc D
bloc D
bloc P
Disques physiques
bloc D
bloc D
bloc D
bloc P
bloc D
bloc P
bloc D
bloc D
bloc D
Parité tournante
- Pour faire disparaître linconvénient majeur du
RAID 4 en écriture, la parité est écrite
alternativement sur lensemble des disques. - Conçu au départ pour les applications
transactionnelles en lecture, donne de bons
résultats aussi dans le cas de grosses E/S.
Remplace donc souvent le RAID 3.
15Combinaison RAID 01
- Performances du RAID 0 alliées à la sécurité du
RAID 1
Disque logique
RAID 0
Disques physiques
RAID 1
Disques miroirs
16Évolution RAID 6
- Utilisation de codages Reed-Solomon ou Hamming,
nécessitant plusieurs disques de contrôle - de sécurité, mais encore plus de difficultés en
mise à jour
Chunk D
Disque logique
Chunk D
Chunk D
Chunk D
Chunk P
Chunk D
Chunk D
Chunk D
Chunk Q
Chunk D
Chunk Q
Chunk D
Chunk D
Disques physiques
Chunk P
Chunk D
Chunk D
Chunk D
Chunk P
Chunk Q
Chunk D
Chunk D
Chunk Q
Chunk P
Chunk D
17Comparaison des modèles
18Comparaison pour petites E/S
Performances comparées au RAID 0. group size
nombre de disques dans le système de parité.
RAID High-Performance, Reliable Secondary
StoragePeter M. Chen, Edward K. Lee, Garth A.
Gibson, Randy H. Katz, David A. Pattersonarticle
de ACM Computing Surveys, octobre 1993
19Comparaison pour grandes E/S
Performances comparées au RAID 0. group size
nombre de disques dans le système de parité.
RAID High-Performance, Reliable Secondary
StoragePeter M. Chen, Edward K. Lee, Garth A.
Gibson, Randy H. Katz, David A. Pattersonarticle
de ACM Computing Surveys, octobre 1993
20Amélioration des modèles le cache
- Ajout de cache, utile surtout en écriture
- Solution ayant ses limites
Solutions de stockage,Jacques Péping,Eyrolles,
1998
21Autres améliorations
- Parité flottante
- En cas de mise à jour, la parité nest pas
réécrite au même endroit, mais loin sur la
piste, pour éviter le délai rotationnel du disque - Parity logging
- Stockage en mémoire des mises à jour de parité.
Écriture séquentielle dès quun volume suffisant
est atteint - Disques intelligents
- Fonctions de calcul de parité, réordonnancement
des requêtes pour optimisation
22Comparaison des modèles
23Exemple disponibilité du RAID 5
On montre que
Où N nombre total de disques G nombre
de disques dans un groupe de parité MTTR
Mean Time To Repair (temps de réparation dun
disque)
Reprenons notre exemple du début, 10 disques avec
MTTFde 200 000 heures (23 ans) et MTTR de 2
heures. Organisons les en 2 groupes de 5 (200
000)2/(10 x 9 x 2) 25 368 ans, soit une
probabilitéde 0,04 sur 10 ans.
RAID High-Performance, Reliable Secondary
StoragePeter M. Chen, Edward K. Lee, Garth A.
Gibson, Randy H. Katz, David A. Pattersonarticle
de ACM Computing Surveys, octobre 1993
24Fonctionnement en mode dégradé
- RAID 0 perte des données
- Pas de mode dégradé !
- RAID 1 légère baisse de performances en lecture
car plus de choix du disque le rapide - RAID à parité dépend du disque perdu
- Si disque de parité idem en lecture, rapide
en écriture ! - Si disque de données obligation de lire tous
les autres disques !
25Reconstitution du disque défectueux
- HOT SWAP remplacement à chaud du disque
défectueux - HOT SPARE disque de secours en ligne dans la
baie de disques - Reconstruction coûteuse dans tous les cas
26Les coûts liés à la disponibilité
Mode Surcoût
RAID 0 0
RAID 1 100
RAID 3 à 5 1 / Nb disques
27Conclusion
28Domaines d application
29Le RAID aujourdhui
- Technique de base disponible dans la plupart des
systèmes de disques et systèmes dexploitation
(Unix, Windows 2000/NT) - RAID matériel ou logiciel
- Le marché sest orienté vers le RAID 0, 1 et 5
(et combinaisons 01)
30Diverses configurations matérielles
Cluster
RAID interne
Storage Area Network
Baie externe
31Cartes internes pour PC
- SCSI
- Hot-swap, hot-spare
- Supporte RAID 0, 1, 10, 5, 50
- Jusquà 15 disques
-
-
- ATA
- Pour stations de travail
- RAID 0/1
- mirroring/striping
- Jusquà 4 disques ATA/100 or ATA/66
32Baies externes
- 2 unités Ultra160 SCSI RAID
- 2 contrôleurs
- RAID 0, 1, 3, 4, 5, 10 and 50
- 12 disques de 146 Go (1,7 To)