La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Redundant Array of Inexpensive Disks

Présentations similaires


Présentation au sujet: "Redundant Array of Inexpensive Disks"— Transcription de la présentation:

1 Redundant Array of Inexpensive Disks
Pourquoi le RAID ? Les principes de base Les modèles RAID Comparaison des modèles Conclusion Intro : A la fin des années 80, les disques des gros systèmes sont fiables, performants mais chers et encombrants. Parallèlement, les petits disques issus de la technologie micro se développent. Leurs performances augmentent de même que leur capacité et leur fiabilité (qui n ’atteint quand même pas celles des « gros » disques). L ’idée a germé d ’utiliser ces petits disques pour réduire les coûts (achat et surface) et en profiter pour améliorer les performances en développant le parallélisme des entrées/sorties. Le RAID était né. Cette présentation explique les techniques utilisées par le RAID et fait le point sur son utilisation aujourd’hui.

2 Pourquoi le RAID ? Proposé en 1987 par l’université de Berkeley
3 axes d’amélioration de l’existant... Coût Performances Disponibilité des données … difficiles à concilier en même temps - diminution du coût par utilisation de disques moins chers, moins performants et moins fiables, + petits - amélioration des performances par l ’utilisation du parallélisme : le faible prix permet d ’avoir une multiplicité d ’axes. - Le manque de fiabilité des disques bon marché requière des dispositifs de renforcement de la disponibilité. Comme nous le verrons, on ne peut toutefois optimiser que 2 axes à la fois.

3 Principes de base

4 Amé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 d’exploitation ou le SGBD voient un seul disque logique

5 Performances : le data stripping
bloc : bloc de données destiné à être stocké sur un disque physique bloc 1 Disque logique bloc 2 bloc 3 bloc 4 Stripe : ensemble de blocs de même niveau bloc 1 bloc 2 bloc 3 Disques physiques bloc 4 Le système voit un disque logique, dont les blocs de données sont en fait répartis sur plusieurs disques physiques. On bénéficie alors de la parallélisation des accès, aussi bien en écriture qu ’en lecture. Selon les tailles définies pour le bloc et le stripe, et l ’unité d ’E/S utilisée, on peut privilégier : - le taux de transfert si l ’unité d ’E/S est le stripe. Une même E/S en répartie sur l ’ensemble des disques. Mais dans ce cas, le système ne gère qu ’une E/S à la fois. - le taux d ’entrées/sorties si l ’unité d ’E/S est le bloc, car le système eput alors traiter plusieurs E/S à la fois. 2 possibilités selon le profil de l’application : Optimisation du taux de transfert (unité E/S applicative = bloc) pour application transactionnelle -> plusieurs d’E/S de petite taille Optimisation du taux d’E/S (unité E/S = stripe) pour application multimédia -> 1 E/S de grosse taille

6 Inconvénient du data stripping
Le MTTF (Mean Time To Failure) décroît en fonction du nombre de composants : Avec M=MTTF d’un composant n = nombre de composants L’équation ci-dessus ce simplifie en si tous les composants ont le même MTTF, cas d’un disk array formé de disques identiques. Exemple : un ensemble de 10 disques d’un MTTF de heures (environ 23 ans) aura un MTTF global de / 10 = heures (soit un peu plus de 2 ans). L’utilisation de multiples disques, si elle améliore les performances, augmente donc le risque d’indisponibilité.

7 Disponibilité : 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 Les « petits » disques étant moins fiables, il a fallu trouver des dispositifs de préservation en cas de perte d ’un élément du groupe. Duplication totale : chaque donnée est enregistrée en double, sur 2 disques différents. La plus chère. Contrôle de parité : perte d ’espace moins importante. On calcule une information de parité par stripe. Problème de la mise à jour de la parité, qui nécessite 4 E/S. 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

8 Disponibilité : redondance des données par contrôle de parité
bloc 1 Disque logique bloc 2 bloc 3 bloc 4 bloc 1 bloc 2 bloc 3 bloc P 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 l’information de n’importe quel disque à partir de celle des autres.

9 Contrôle de parité : reconstitution
bloc_1 = XOR bloc_2 = XOR bloc_3 = = bloc_P = Si le disque 2 tombe, on reconstruit l’information perdue à l’aide des 2 autres disques et du disque de parité : bloc_1 = XOR bloc_3 = XOR bloc_P = = bloc_2 =

10 Inconvénients du contrôle de parité
On ne peut perdre qu’un 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 l’ancienne valeur de bloc_1 Lire l’ancienne 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 !

11 Modèles RAID

12 Les modèles de base sans parité
bloc 1 RAID 0 (data stripping) Disque logique bloc 2 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 0 : c ’est simplement le data striping. Uniquement amélioration des performances. Aucune sécurisation. Surcoût 0 RAID 1 : c ’est simplement le miroir. Disponibilité exemplaire. On peut perdre plusieurs disques, si ce ne sont jamais un original et son miroir... Améliore les performances de lecture (disque le + rapide répond en premier). Dégrade légèrement les temps de réponse en écriture (attente du disque le + lent). Surcoût 100 % (doublement de la capacité) RAID 1 (miroir) bloc 1 bloc 1 Disques physiques bloc 2 bloc 2 bloc 3 bloc 3 bloc 4 bloc 4

13 Les modèles de base à parité fixe
bloc 1 RAID 3 et 4 Disque logique bloc 2 bloc 3 bloc 4 bloc 1 bloc 2 bloc 3 bloc P Disques physiques bloc 4 RAID 2 : a été modélise mais jamais utilisé. Contrôle de parité par codage de Hamming. RAID 3 : Disque de parité fixe. L ’unité d ’E/S est le stripe afin d ’optimiser le taux de transfert. RAID 4 : Disque de parité fixe. L ’unité d ’E/S est le bloc afin d ’optimiser le taux d ’E/S. Le disque de parité est un goulot d ’étranglement en écriture du fait de l ’obligation de mettre à jour la parité +> jamais utilisé. Ce problème n ’existe pas en RAID 3, car on écrit un stripe complet à chaque fois, et donc une nouvelle parité. Donc à chaque E/S, on accède les 4 disques. On peut perdre 1 disque. Surcoût 1 / nb disques Parité fixe Un disque est dédié à la parité. Unité d’entré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 n’existe pas en RAID 3 puisqu’on modifie de toute façon l’ensemble des blocs.

14 Les 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 Disques physiques bloc D bloc P bloc D bloc D bloc D bloc D bloc P bloc D bloc D bloc D bloc D bloc P Pour éviter le goulot d ’étranglement du disque de parité en RAID 5. La parité est écrite sur un disque différent à chaque fois. On répartit ainsi les E/S. L ’unité d ’E/S est généralement le bloc, mais des études on montré un bon comportement aussi si l ’unité d ’E/S est le stripe. Bonnes performances en lecture, moins bonnes en écriture, du fait de la mise à jour de la parité. Remplace avantageusement un RAID 3. Surcoût 1/nb disques. On peut perdre un disque. Parité tournante Pour faire disparaître l’inconvénient majeur du RAID 4 en écriture, la parité est écrite alternativement sur l’ensemble 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.

15 Combinaison : RAID 0+1 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 Q Chunk D Chunk D Chunk D Disques physiques Chunk D Chunk D Chunk P Chunk Q Chunk D Chunk Q Chunk D Chunk D Chunk D Chunk P Chunk D Chunk P Chunk Q Chunk D Chunk D

17 Comparaison des modèles
Performances

18 Comparaison 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 Storage Peter M. Chen, Edward K. Lee, Garth A. Gibson, Randy H. Katz, David A. Patterson article de ACM Computing Surveys, octobre 1993

19 Comparaison 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 Storage Peter M. Chen, Edward K. Lee, Garth A. Gibson, Randy H. Katz, David A. Patterson article de ACM Computing Surveys, octobre 1993

20 Amé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

21 Autres améliorations Parité flottante Parity logging
En cas de mise à jour, la parité n’est 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 qu’un volume suffisant est atteint Disques « intelligents » Fonctions de calcul de parité, réordonnancement des requêtes pour optimisation

22 Comparaison des modèles
Disponibilité

23 Exemple : 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 d’un disque) Reprenons notre exemple du début, 10 disques avec MTTF de heures (23 ans) et MTTR de 2 heures. Organisons les en 2 groupes de 5 : ( )2/(10 x 9 x 2) = ans, soit une probabilité de 0,04 % sur 10 ans. RAID : High-Performance, Reliable Secondary Storage Peter M. Chen, Edward K. Lee, Garth A. Gibson, Randy H. Katz, David A. Patterson article de ACM Computing Surveys, octobre 1993

24 Fonctionnement 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 ! RAID 0 : par de mode dégradé. RAID 1 : idem en écriture, perte du disque le + rapide en lecture. RAID parité : si perte du disque de parité : idem en lecture et en écriture. Si perte du disque de données, grosse dégradation du fait de l ’obligation de lire la parité, toutes les données restantes et de reconstituer les données manquantes par XOR. RAID 5 bien + touché car tous les disques contiennent des données… Nécessité de remplacer rapidement le disque défectueux, car la plupart des modes n ’autorisent la perte que d ’un seul disque. Le HOT SPARE permet d ’automatiser la reconstruction, le système se chargeant alors, sans intervention, de la lancer. Reconstruction toujours coûteuse car obligation de relire l ’ensemble des données. Un disque chargé en RAID 1 (le primaire), tous les disques en RAID 5 (obligation d ’accéder à tous les anciens blocs + la parité ==> mécanismes de « declustered parity » : entrelacement des données sur des groupes différents de disques en RAID 5.

25 Reconstitution 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

26 Les coûts liés à la disponibilité
Mode Surcoût RAID 0 RAID 1 100% RAID 3 à 5 1 / Nb disques

27 Conclusion

28 Domaines d ’application

29 Le RAID aujourd’hui Technique de base disponible dans la plupart des systèmes de disques et systèmes d’exploitation (Unix, Windows 2000/NT) RAID matériel ou logiciel Le marché s’est orienté vers le RAID 0, 1 et 5 (et combinaisons : 0+1) Toutes les baies proposent des configurations à base de RAID. Systèmes permettent de faire du RAID logiciel, mais pb de performances. Le 1 et le 0+1 se développent du fait de la baisse du prix des disques (ou plutôt la baisse du coût au Mo) : meilleures performances, meilleure disponibilité, mode dégradé le moins contraignant.

30 Diverses configurations matérielles
Cluster RAID interne Storage Area Network Baie externe

31 Cartes 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

32 Baies 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)


Télécharger ppt "Redundant Array of Inexpensive Disks"

Présentations similaires


Annonces Google