A quoi sert les RAID 0 et RAID 1 ?

5
7069

Le RAID (pour Redundant Arrays of Independant Disks, donc accès redondants sur des disques indépendants) est une technologie extrêmement utilisé dans le monde des serveurs, mais également un peu chez les particuliers. Voyons dans ce Quicky les RAID les plus utilisés : les RAID 0 et RAID 1.

Difficulté : Intermédiaire

grappe RAID

Mais qu’est-ce que c’est ?

Le but est de rassembler plusieurs disques durs en une grappe afin de les rendre plus rapides et/ou mieux protéger les données.

Pour créer une grappe RAID, il faut un contrôleur RAID. On en trouve des très basiques dans les cartes mères actuelles, et des bien plus performants dans des cartes RAID dédiées utilisées par les serveurs. Le contrôleur RAID va créer la grappe RAID, qui est une couche d’abstraction entre le système (l’OS) et la couche de données (les disques durs). Ainsi, le système ne verra plus les disques dur directement, mais communiquera avec la grappe RAID, c’est à dire avec le contrôleur, qui se charge du stockage.

Seulement, le contrôleur de la carte mère n’est pas entièrement matériel. En effet, une partie des calculs nécessaires au fonctionnement du RAID sont déportés sur le processeur, ce qui lui crée une charge de travail supplémentaire. Ce n’est plus problématique aujourd’hui, car même les CPU entrée de gamme sont des Dual-Core assez performant, mais cela posait clairement problème sur les petits CPU il y a quelques années.

Des RAID, il en existe plusieurs sortes. Chaque RAID a ses avantages et ses inconvénients et cible donc un besoin particulier. Voici les deux RAID les plus courants :

Le RAID 0 :

Il existe deux RAID que l’on pourrait dire basique : le RAID 0 et le RAID 1. Ce sont les plus simples à mettre en place. Ainsi, même un mauvais contrôleur, comme celui présent dans la carte mère, n’impactera que peu les performances. Voici leur principe.

Commençons par le RAID 0. C’est le RAID le plus rapide qui existe. C’est un RAID qui s’effectue avec 2 disques ou plus. Il rassemble les disques durs en une seule entité et stocke les données sous forme de stripes (bandes) typiquement de 64 Ko. Le but étant de faire travailler les disques durs de manière parallèle, un peu le principe du double canal pour la mémoire vive. Prenons un exemple pour mieux voir.

325px-RAID_0.svg

Admettons que vous ayez deux disques durs de 1 To que vous mettez en RAID 0. Le système verra une entité de 2 To (car 2×1 To). Et si vous écrivez un fichier de 212 Ko sur ce disque virtuel, le contrôleur organisera les choses de cette manière :

  • La première bande de 64 Ko (0-64 Ko) sera écrite sur le disque 1
  • La deuxième bande (64-128 Ko) sera écrite sur le disque 2
  • La troisième bande (128-192 Ko) sera écrite sur le disque 1
  • La quatrième bande (192-212 Ko) sera écrite sur le disque 2

Pour résumer grossièrement, la moitié du fichier est écrit sur le premier disque et l’autre moitié sur le deuxième. Le but est ainsi de pouvoir écrire le fichier environ 2 fois plus vite. Pour la lecture, elle sera faite à moitié par le premier disque et à moitié par le deuxième (puisqu’ils possèdent chacun une moitié de fichier), et donc ira également deux fois plus vite.

Lorsque vous travaillez à deux sur quelque chose (comme rédiger un rapport par exemple), vous faites souvent une répartition de tâche « à la RAID 0 » c’est à dire chacun s’occupe de sa moitié pour aller plus vite. C’est une parallélisation des tâches. Notez que le principe est généralisable à plus de deux disques (voir ci dessous l’exemple du RAID 0 à 8 disques, cliquez pour grossir)

diagram-raid0-performance

Seulement, comme vous pouvez voir, les bandes sont typiquement de 64 Ko. Cela veut dire que si vous écrivez un fichier de taille inférieur à 64 Ko, celui-ci tiendra sur une bande, et donc sera écrit sur un seul disque, sans parallélisation possible.  C’est alors que vous vous posez la question « pourquoi on ferait pas des petites bandes de type 4 Ko, comme ça même sur un tout petit fichier, il sera écrit de manière parallèle et tout va bien ». Et bien non, car si on fait de toutes petites bandes, cela fera une énorme charge de travail pour le contrôleur RAID (et donc pour votre CPU si vous travaillez avec le contrôleur intégré). Cela ferait au contraire une chute de performances.

Tout n’est pas aussi idyllique cependant, car il faut prendre deux choses en ligne de compte. La première est qu’un disque dur ne mettra pas moitié moins de temps pour écrire 500 Ko par rapport à 1 Mo. En effet, certains temps (dont le temps d’accès) sont incompressibles, ce qui amenuise les performances des disques durs pour les petits fichiers. Pour plus d’informations, vous pouvez vous rabattre sur notre Quicky « Pourquoi les SSD sont plus rapides que les disques durs ? » Tout y est expliqué en détails.

De plus, le contrôleur RAID fait des calculs, qui impacteront forcément le temps de traitement des fichiers. Et plus vous avez de disques en RAID 0, plus la charge est élevée. Ainsi, il ne faut pas compter sur le double de performances avec deux disques en RAID (et encore moins le triple avec trois disques ou pire le quadruple avec quatre disques).

De plus, les performances pour les petits fichiers (inférieur à la taille de votre stripe) seront moins bonnes par rapport à un disque seul. En effet, les données ne sont écrites que sur un disque, donc le RAID 0 n’améliore rien, et avec le contrôleur qui travaille, on se retrouve avec des performances en baisse. Ainsi, le RAID 0 n’est pas fondamentalement plus performant qu’un disque seul lors d’une utilisation type disque système (et sa myriade de petits fichiers). Par contre, pour une utilisation de fichiers plus conséquents (supérieurs à 1 Mo typiquement), le RAID 0 est vraiment très rapide.

Par contre, il faut impérativement que les disques fassent la même taille.  Car une fois un des disques rempli, la grappe ne peut plus continuer d’écrire. La capacité totale d’un RAID 0 est donc égale à « nombre de disque x capacité du plus petit ». Si vous faites un RAID avec 4 disques, un de 45 Go, deux de 30 Go et un de 15 Go, vous n’aurez pas 45+30+30+15 + 120 Go mais 15 x 4 = 60 Go de disponible.

RAID1a

Et dernier point et non des moindres : le RAID 0 ne propose aucune redondance ! Cela veut dire que si vous faîtes une grappe RAID 0 avec 4 disques durs, il suffit que l’un des 4 claque pour que vous perdiez tout. En effet, un fichier auquel il manque un quart des données est illisible (sauf restauration spécifique). Dans tous les cas, vous perdez l’utilisation de votre grappe. Cela en fait un procédé absolument à proscrire pour les données importantes, ou alors avec un back-up.

Le RAID 1 :

Le RAID 1 est de son côté bien plus simple que le RAID 0. Il est surnommé le RAID miroir, et il porte bien son nom. Il s’utilise typiquement avec 2 disques, bien qu’il soit possible d’en mettre plus. Vous n’aurez la capacité réelle que d’un seul disque, mais une réplication des données sur chaque disque de la grappe, tel un miroir.

miroir-grossissant-3x-30-ch

Un exemple valant bien des mots, si vous avez deux disques de 1 To en RAID 1. Vous n’aurez que 1 To de capacité de stockage (et non 2), mais les deux disques durs de la grappe sont identiques (mirroir). Ainsi les données sont copiées à la fois sur le premier et e deuxième disque.

325px-RAID_1.svg

On perd en rapidité (à cause du traitement du contrôleur) par rapport à un disque seul, par contre étant donné que les deux disques sont des copies conformes, on ne perd aucune données dans le cas de défaillance d’un disque. Notez que si on fait un RAID 1 avec trois disques, vous aurez trois copies conformes, donc vous pouvez tenir même si deux disques grillent. Par contre vous aurez toujours la capacité que d’un seul disque alors que vous en avez trois.

Acheter plusieurs disques pour n’avoir la capacité que d’un seul, ca coûte cher. Délicat à mettre en place pour les serveurs donc. Par contre pour des particuliers, c’est idéal pour stocker les données importantes et souvent modifiées.

En résumé :

Pour résumer, les RAID 1 et RAID 0 sont les RAID « de base », les plus simples à mettre en place (cela fera sans doute l’objet d’un Tuto), et surtout les seuls à ne pas être trop pénalisant avec le chipset intégré à la carte mère. Le RAID 0 est rapide mais peu sécurisé, tandis que le RAID 1 propose peu de capacité, est assez peu rapide, mais résiste à la panne d’un des disques.

Nous verrons très prochainement, dans un autre Quicky quels sont les autres RAID possibles, quels sont leurs avantages et leurs inconvénients.

En attendant, si vous voulez voir à quel point un RAID 0 peut être rapide, je vous invite à lire notre test d’un RAID 0 de SSD à cette adresse.

Avez-vous ou comptez-vous avoir un RAID ? Si oui, lequel ?

5
Poster un Commentaire

avatar
5 Fils de commentaires
0 Réponses de fil
0 Abonnés
 
Commentaire avec le plus de réactions
Le plus populaire des commentaires
5 Auteurs du commentaire
NikkoyanneauiEclecticShadokGungarAlpha_Lex Auteurs de commentaires récents
  S’abonner  
plus récent plus ancien Le plus populaire
Notifier de
Nikko
Invité
Nikko

moi je possède deux raid1 dans mon pc (jai perdu une fois des données qui m’étaient chères !)
un raid1 de 1TO et l’autre de 2TO

yanneau
Membre
yanneau

merci pour cette explication

iEclecticShadok
Membre
iEclecticShadok

merci beaucoup pour ces articles!! faites en plus!

Gungar
Membre
Gungar

Très bon résumé, merci Geekosa.

Alpha_Lex
Membre
Alpha_Lex

Merci pour éclaircissement, j’ai déjà vu pas mal de fois des configs en raid mais je ne savais pas ce que c’était !