Les différents types d'architecture RAID sont numérotés à partir de 0 et peuvent se combiner entre eux (on parlera alors de RAID 0+1, 1+0, etc.).
Le RAID 0, également connu sous le nom d'« entrelacement de disques » ou de « volume agrégé par bandes » (striping en anglais) est une configuration RAID permettant d'augmenter significativement les performances de la grappe en faisant travailler n disques durs en parallèle (avec
Le défaut de cette solution est que la perte d'un seul disque entraîne la perte de toutes les données.
Le RAID 0 n'apportant pas de redondance, tout l'espace disque disponible est utile.
Dans cette configuration, les données sont réparties par bandes (stripes en anglais) d'une taille fixe. Cette taille est appelée granularité (voir plus loin la section granularité).
Ainsi, sur un RAID 0 de n disques (avec
Ce type de RAID est parfait pour des applications requérant un traitement rapide d'une grande quantité de données. Mais cette architecture n'assure en rien la sécurité des données ; en effet, si l'un des disques tombe en panne, la totalité des données du RAID est perdue.
Le RAID 1 consiste en l'utilisation de n disques redondants (avec
Les accès en lecture du système d'exploitation se font sur le disque le plus facilement accessible à ce moment-là. Les écritures sur la grappe se font de manière simultanée sur tous les disques, de façon à ce que n'importe quel disque soit interchangeable à tout moment.
Lors de la défaillance de l'un des disques, le contrôleur RAID désactive, de manière transparente pour l'accès aux données, le disque incriminé. Une fois le disque défectueux remplacé, le contrôleur RAID reconstitue, soit automatiquement, soit sur intervention manuelle, le miroir. Une fois la synchronisation effectuée, le RAID retrouve son niveau initial de redondance.
Le RAID 5 combine la méthode du volume agrégé par bandes (striping) à une parité répartie. Il s'agit là d'un ensemble à redondance N + 1. La parité, qui est incluse avec chaque écriture se retrouve répartie circulairement sur les différents disques. Chaque bande est donc constituée de N blocs de données et d'un bloc de parité. Ainsi, en cas de défaillance de l'un des disques de la grappe, pour chaque bande il manquera soit un bloc de données soit le bloc de parité. Si c'est le bloc de parité, ce n'est pas grave, car aucune donnée ne manque. Si c'est un bloc de données, on peut calculer son contenu à partir des N − 1 autres blocs de données et du bloc de parité. L'intégrité des données de chaque bande est préservée. Donc non seulement la grappe est toujours en état de fonctionner, mais il est de plus possible de reconstruire le disque une fois échangé à partir des données et des informations de parité contenues sur les autres disques.
On voit donc que le RAID 5 ne supporte la perte que d'un seul disque à la fois. Ce qui devient un problème depuis que les disques qui composent une grappe sont de plus en plus gros (1 To et plus). Le temps de reconstruction de la parité en cas de disque défaillant est allongé. Il est généralement de 2 h pour des disques de 300 Go contre une dizaine d'heure pour 1 To. Pour limiter le risque il est courant de dédier un disque dit de spare. En régime normal il est inutilisé. En cas de panne d'un disque il prendra automatiquement la place du disque défaillant. Cela nécessite une phase communément appelée "recalcul de parité". Elle consiste pour chaque bande à recréer sur le nouveau disque le bloc manquant (données ou parité).
Bien sûr pendant tout le temps du recalcul de la parité le disque est disponible normalement pour l'ordinateur qui se trouve juste un peu ralenti.
Ce système nécessite impérativement un minimum de trois disques durs. Ceux-ci doivent généralement être de même taille, mais un grand nombre de cartes RAID modernes autorisent des disques de tailles différentes.
La capacité de stockage utile réelle, pour un système de X disques de capacité c identiques est de
Ainsi par exemple, trois disques de 100 Go en RAID 5 offrent 200 Go utiles ; dix disques, 900 Go utiles.
Ce système allie sécurité (grâce à la parité) et bonne disponibilité (grâce à la répartition de la parité), même en cas de défaillance d'un des périphériques de stockage.
Il existe une variante : le « RAID 5 orthogonal » où chaque disque a son propre contrôleur. Toutes les autres fonctionnalités sont identiques.
On a souvent tendance à croire qu'un système RAID 5 est totalement fiable. Il est en effet généralement admis que la probabilité de défaillance simultanée de plusieurs disques est extrêmement faible — on parle évidemment d'une défaillance entraînant la perte de données définitive sur plusieurs disques et non d'une simple indisponibilité de plusieurs disques. Cela est vrai pour une défaillance générale d'une unité de disque. Cependant, cela est faux si l'on considère comme "défaillance" un seul secteur devenu illisible.
En effet, dans la pratique, il est très rare que toutes les données d'un volume soient lues régulièrement. Et quand bien même ce serait le cas, la cohérence de la parité n'est que très rarement vérifiée pour des raisons de performances. Il est donc probable que des défauts tels que des secteurs de parité illisibles ne soient pas détectés pendant une très longue période. Lorsque l'un des disques devient réellement défectueux, la reconstruction nécessite de parcourir l'intégralité des disques restants. On peut alors découvrir des défauts qui étaient restés invisibles jusque-là.
Tout ceci pourrait ne pas être bien grave et occasionner la perte d'une quantité de données minime (un secteur de disque), cependant, l'extrême majorité des contrôleurs RAID est incapable de gérer les défaillances partielles : ils considèrent généralement qu'un disque contenant un secteur illisible est totalement défaillant. À ce moment-là, 2 disques sont considérés défaillants simultanément et le volume RAID 5 devient inutilisable. Il devient extrêmement difficile de récupérer les données.
Un système RAID 5 doit donc être vérifié et sauvegardé très périodiquement pour s'assurer que l'on ne risque pas de tomber sur ce genre de cas.
NRAID : Near/Non Redundant Array of Inexpensive/Independent Disk
La concaténation de disques consiste à additionner les capacités de plusieurs disques durs en un volume logique d'une taille équivalente à la somme des tailles de disques durs. Cette méthode utilise une méthode d'écriture séquentielle : les données ne sont écrites sur le disque dur suivant que lorsqu'il ne reste plus de place sur le précédent.
Le NRAID n'est pas à proprement parler un RAID, et il ne permet d'ailleurs aucune redondance de données, mais il offre cependant une tolérance aux pannes supérieure au RAID 0. On le rencontre souvent sous le nom de JBOD (Just a Bunch Of Disks).
Le RAID 2 est aujourd'hui obsolète. Il combine la méthode du volume agrégé par bande (striping en anglais) à l'écriture d'un code de contrôle d'erreur par code de Hamming (code ECC) sur un disque dur distinct. Cette technologie offre un bon niveau de sécurité, mais de mauvaises performances.
Le RAID3 et le RAID4 sont sensiblement semblables sauf que le premier travaille par octets et le second par blocs. Le RAID4 ne nécessite pas autant de synchronisme entre les disques. Le RAID3 tend donc à disparaître au profit du RAID4 qui offre des performances nettement supérieures.
Ces niveaux de RAID nécessitent une matrice de n disques (avec
Il est important que le disque de parité soit de bonne qualité car il est à tout instant sollicité à l'écriture. Ce dernier point est une des limitations du RAID 3.
De même, si plus d'un disque vient à défaillir, il est impossible de remédier à la perte de données.
Le RAID 6 est une évolution du RAID 5 qui accroît la sécurité en utilisant n informations redondantes au lieu d'une. Il peut donc résister à la défaillance de n disques. Les fondements mathématiques utilisés pour les informations de redondance du RAID 6 sont beaucoup plus complexes que pour le RAID 5 ; les implémentations de l'algorithme se limitent souvent à n = 2 (soit la perte de 2 disques) de ce fait.
Des explications intéressantes mais un peu ardues sont disponibles dans la version anglaise de cet article ainsi que dans Les mathématiques du RAID 6.
Si la sécurité est plus grande, le coût en matériel est plus élevé et la vitesse est moindre. La puissance CPU nécessaire pour calculer les redondances et surtout pour reconstruire un volume défectueux est également nettement plus importante.
Les défauts majeurs sont :
Le RAID 6 était peu utilisé du fait de son surcoût. La récente envolée des capacités des disques ainsi que la vulgarisation de solution professionnelle à base de disque SATA a montré un intérêt nouveau dans l'utilisation du RAID 6, que ce soit par le biais de contrôleur Raid Hardware ou via du raid logiciel (Linux-2.6 intègre le RAID 6).
La capacité totale (Ct), pour un système avec n disques, est de
Un système de stockage grevé de brevets appelé RAIDn prétend permettre de dépasser largement les capacités du RAID 6.
RAID DP (Dual Parity) ressemble au RAID6 à ceci près qu'en RAID DP les disques de parité sont fixes. Ce type de RAID est adopté en général sur les baies de stockage NAS.
Fondamentalement, un niveau de RAID combiné est l'utilisation d'un concept de RAID classique sur des éléments constitutifs qui sont eux-mêmes le résultat d'un concept RAID classique. Le concept utilisé peut être le même ou différent.
La syntaxe est encore un peu floue mais on peut généralement considérer que le premier chiffre indique le niveau de raid des "grappes" et que le second indique le niveau de raid global. Dans l'absolu rien n'empêche d'imaginer des RAID combinés à 3 étages ou plus mais cela reste pour l'instant plus du domaine de la théorie et de l'expérimentation.
Le nombre important (et croissant) de permutations possibles fait qu'il existe une multitude de raid combinés et nous n'en ferons pas l'inventaire. Nous pouvons cependant présenter les avantages et les faiblesses des plus courants.
Pour les calculs suivants, on utilise les variables suivantes :
Il permet d'obtenir du mirroring rapide puisqu'il est basé sur des grappes en striping. Chaque grappe contenant au minimum 2 éléments, et un minimum de 2 grappes étant nécessaire, il faut au minimum 4 unités de stockage pour créer un volume RAID0+1.
La fiabilité est moyenne car un disque défectueux entraîne le défaut de toute une grappe. Par ailleurs, cela allonge beaucoup le temps de reconstruction et dégrade les performances pendant la reconstruction. L'intérêt principal est que dans le cas d'un miroir à 3 grappes ou plus, le retrait volontaire d'une grappe entière permet d'avoir une sauvegarde "instantanée" sans perdre la redondance.
Il permet d'obtenir un volume agrégé par bande fiable (puisqu'il est basé sur des grappes répliquées). Chaque grappe contenant au minimum 2 éléments et un minimum de 2 grappes étant nécessaire, il faut au minimum 4 unités de stockage pour créer un volume RAID10.
Sa fiabilité est assez grande puisqu'il faut que tous les éléments d'une grappe soient défectueux pour entraîner un défaut global. La reconstruction est assez performante puisqu'elle ne mobilise que les disques d'une seule grappe et non la totalité.
Même principe que pour le raid 0+1 mais en employant du RAID5 pour la partie globale. Chaque grappe contenant au minimum 2 disques, et un minimum de 3 grappes étant nécessaire, il faut au minimum 6 unités de stockage pour créer un volume RAID05. Ce mode ne présente pas d'intérêt majeur par rapport à un RAID5 classique à N * G disques. Il est donc très peu utilisé.
Il permet d'obtenir un volume agrégé par bandes avec redondance répartie très fiable (puisqu'il est basé sur des grappes répliquées en miroir). Chaque grappe contenant au minimum 2 disques, et un minimum de 3 grappes étant nécessaire, il faut au minimum 6 unités de stockage pour créer un volume RAID15. Ce mode est très fiable puisqu'il faut que tous les disques de 2 grappes différentes cessent de fonctionner pour le mettre en défaut. Ce mode est cependant coûteux par rapport à la capacité obtenue.
Il permet d'obtenir un volume agrégé par bandes basé sur du RAID 5. Chaque grappe contenant au minimum 3 disques, et un minimum de 2 grappes étant nécessaire, il faut au minimum 6 unités de stockage pour créer un volume RAID 50. Un des meilleurs compromis lorsque l'on cherche la rapidité sans pour autant vouloir trop dégrader la fiabilité. En effet, l'agrégat par bande (fragile) repose sur des grappes redondantes. Il suffit cependant que 2 disques d'une même grappe tombent en panne pour le mettre en défaut.
Il permet d'obtenir un volume répliqué basé sur des grappes en RAID5. Chaque grappe contenant au minimum 3 disques, et un minimum de 2 grappes étant nécessaire, il faut au minimum 6 unités de stockage pour créer un volume RAID51. C'est un mode coûteux (faible capacité au regard du nombre de disques).
Le RAID 5E (E pour Enhanced, "amélioré") est une variante du RAID 5 dans laquelle des bandes de rechange sont réservées. Ces bandes sont réparties sur les disques de manière circulaire, comme pour la parité.
Le RAID 5EE (E pour Enhanced, "amélioré") est une variante du RAID 5E qui offre de meilleurs temps de reconstruction. Contrairement au RAID 5E, l'espace de rechange réservé au sein de la grappe est distribué à travers tous les disques physiques.
RAID DP (Dual Parity) ressemble au RAID 6 à ceci près qu'en RAID DP les disques de parité sont fixes. Ce type de RAID est adopté en général sur les baies de stockage NAS.
Le RAID TP pour Triple Parity RAID technology a la même organisation que le RAID 6 mais utilise 3 codes de redondance. Ceci permet de continuer de fonctionner après la panne simultanée de 3 disques.
Le RAID 1.5 est une évolution du RAID 1. Les accès en lecture ne se font non plus depuis un seul disque, mais en parallèle depuis tous les disques à la manière d'un RAID 0 ce qui apporte un gain sensible en performances, sans rien changer à la fiabilité.
L'évolution du RAID 3 permettant de fonctionner le tout de manière asynchrone. Il a été annoncé comme plus performant de 1,5x à 6x que n'importe quel autre RAID. Tout comme le RAID 3, un seul disque contient les parités de tous. Chaque disque a un contrôleur SCSI/SATA/Fibre_Channel/... et le système est régi par une carte calculant la parité, gérant le cache et contrôlant les disques.
Cette version, développée par Storage Computer Corporation, est propriétaire et s'avère très coûteuse à mettre en place.
Le RAID S est un RAID 5 estampillé EMC² employé dans la gamme Symmetrix que l'on ne retrouve donc pas chez les autres constructeurs.
L'Intel Matrix Storage Technology est disponible sur les chipsets ICH6R et ICH6RW. Il s'agit d'une solution RAID basée sur 4 ports Serial-ATA qui va permettre de mettre des disques durs en RAID de façon moins contraignante que les solutions actuelles. En effet les contrôleurs RAID actuels ne permettent avec deux disques identiques que de faire soit du RAID 0, soit du RAID 1. Bref, c'est l'un ou l'autre. Avec le Matrix RAID, Intel permet de combiner sur deux disques à la fois du RAID 0 et du RAID 1. Par exemple avec deux disques durs 250 Go, il est possible de créer un RAID 0 (striping) de 100 Go (les 50 premiers Go de chaque disque) et un RAID1 (mirroring) de 200 Go avec les 400 Go restant. Avec les RAID traditionnels, un RAID 0 et un RAID 1 dans une même configuration nécessite l'usage de quatre disques. Même si c'est évident, ajoutons que l'ICH6R ne permet pas de faire du RAID 0+1 avec deux disques durs.
Aujourd'hui jusqu'à l'ICH8R/DO il est possible de faire un RAID-5 maximum avec 4 disques, depuis l'ICH9R/DO il est possible de faire un RAID-5 de 6 disques pour un maximum de capacité. En plus avec l'ICH 9/10 DO il est possible de rajouter un disque à une grappe existante.
Le Raid 1E est un système de mirroring par bandes permettant d'utiliser un nombre de disques supérieur à 2 pair ou impair. Les données sont découpées par bandes qui sont mirrorrées (dupliquées) sur un des autres disques de la grappe. La capacité totale du volume logique est égal a la moitié de celle du volume physique.
Le système ZFS de Sun intègre un schéma de redondance similaire au RAID 5 qui se nomme le RAID-Z. Le RAID-Z évite le « trou d'écriture » (write hole) du RAID 5 par une règle de copie-sur-écriture : plutôt que d'écrire par dessus des anciennes données avec de nouvelles, il écrit les nouvelles données dans un nouvel emplacement puis réécrit le pointeur vers les nouvelles données. Cela évite les opérations de lire-modifier-écrire pour des petits enregistrements en ne faisant que des écritures full-strip. Des petits blocs sont écrits en miroir au lieu d'être protégés en parité, ce qui est possible car le système de fichiers est conscient de la sous-structure de stockage et peut allouer de l'espace supplémentaire si nécessaire. Il existe également un RAID-Z2 qui utilise deux types de parités pour parvenir à un résultat similaire au RAID 6 : la possibilité de perdre jusqu’à deux disques sans perdre de données.
Le système RAID-Z est plus performant que le RAID 5.
Le système X-RAID est une technologie développée par Netgear sur sa suite de produit ReadyNAS. Cette technologie permet suivant le nombre de disque de choisir entre les différents types de RAID et de passer de l'un à l'autre sans perte de données ou d'arret du service. X-RAID utilise principalement les RAID 1 et 5.