OVH Cloud OVH Cloud

RAID1 et goulot d'etranglement

7 réponses
Avatar
DocPhilz
Bonjour,

je me résouds a poster ici apres avoir épluché google sans succès.

Je vais prendre un exemple volontairement extreme.
Considérons un RAID1 (donc miroir) de 2 disques SCSI :
_ un disque A de 120 Go en UW320, 15K rpm
_ un disque B de 120 Go en UW160, 7200 rpm.

Considerons enfin que la carte controleur n'est pas un facteur limitant dans
la config
(mettons une appliance dédiée genre ATTO 5300 avec 2 connecteurs scsi
UW320).

Lorsque l'OS du serveur ecrit "ABCD" sur la carte controleur, celle ci ecrit
donc
"ABCD" sur le disque A en , mettons 8 ms,
et ecrit la meme information "ABCD" sur le disque B, plus lent, en mettons
15 ms.
Je presume qu'il doit trainer qqe part une sorte de trame d'aquittement qui
remonte au
controleur pour dire 'ok c'est bon j'ai ecris ABCD sur chaque disque' avant
de repasser la main a l'OS.
Donc dans ce cas, mon raid1 va se comporter, j'en ai peur, comme un "disque
virtuel" qui va mettre 15 ms pour realiser l'ecriture de "ABCD".

Bref, ma question est : en toute logique, la performance globale de notre
RAID1 s'aligne-t-elle sur celle du disque le plus lent ?
Considerant comme souvent que la resistance d'une chaine est egale a celle
de son maillon le plus faible.

Ou alors, a contrario, exsite-t-il une techno, une astuce, un controlleur
"intelligent" qui soit capable au contraire de profiter du disque le plus
rapide,
quitte a "décaler" les ecritures sur le 2eme disque lent, de qqes
millisecondes ?

Merci a toute personne capable d'eclairer ma lanterne !
D.

7 réponses

Avatar
Le Gaulois

Je vais prendre un exemple volontairement extreme.
Considérons un RAID1 (donc miroir) de 2 disques SCSI :
_ un disque A de 120 Go en UW320, 15K rpm
_ un disque B de 120 Go en UW160, 7200 rpm.

Considerons enfin que la carte controleur n'est pas un facteur limitant dans
la config
(mettons une appliance dédiée genre ATTO 5300 avec 2 connecteurs scsi
UW320).

Lorsque l'OS du serveur ecrit "ABCD" sur la carte controleur, celle ci ecrit
donc
"ABCD" sur le disque A en , mettons 8 ms,
et ecrit la meme information "ABCD" sur le disque B, plus lent, en mettons
15 ms.


Un des avantages du SCSI est qu'il y a des files d'attentes et
que les différents ordres de lectures écritures peuvent même être
exécutés dans un ordre différent de celui dans lequel ils ont été
donnés. (Il paraît qu'en SATA-II, ça peut aussi fonctionner
comme ça).

Bref, ma question est : en toute logique, la performance globale de notre
RAID1 s'aligne-t-elle sur celle du disque le plus lent ?


Pour des écritures intensives, probablement oui. De toutes façon
la caches n'ont pas une taille illimitée. Pour les lectures, ça
dépend du logiciel qui gère le RAID, soit du firmware de la carte
contrôleur RAID, soit du pilote RAID de l'OS. Si celui-ci est
suffisemment malin pour se rendre compte qu'un disque est
largement plus performant que l'autre et qu'il vaut mieux faire
une majorité d'accès sur celui-là, les performances en lecture
pourraient être celle du disque le plus performant, mais elles
seront plus faibles que celles d'une grappe RAID composée de 2
disques performants.

En général dans une grappe RAID on s'efforce des mettre des disques
du même modèle ou au minimum ayant les mêmes caractéristiques.

Avatar
DocPhilz
ok, merci pour cette reponse.

Qui, en résumé, c'est possible, a condition que la partie logicielle du
controleur RAID (qu'il soit logiciel ou materiel) le gère.

En général dans une grappe RAID on s'efforce des mettre des disques
du même modèle ou au minimum ayant les mêmes caractéristiques.


absolument.

Mais dans ce cas présent c'est un peu plus compliqué que ca.
Il y a des contraintes entre nécessité economique,
pre requis du client et autres considerations d'ordre politique :-)

merci encore.
d.

Avatar
Emmanuel Florac
Le Fri, 25 Aug 2006 10:51:27 +0200, DocPhilz a écrit :


Bref, ma question est : en toute logique, la performance globale de notre
RAID1 s'aligne-t-elle sur celle du disque le plus lent ?


Je précise sur ce qu'a dit le gaulois : le RAID1 est plus rapide en
lecture dans le cas général (parce qu'on peut lire sur les deux disques
à la fois, en léger décalé), mais dans ton cas la lecture sera en gros
alignée sur le disque le plus rapide, et l'écriture sur le plus lent.

--
Ce qu'il y a d'enivrant dans le mauvais goût c'est le plaisir
aristocratique de déplaire.
C. Baudelaire.

Avatar
DocPhilz
Merci Emmanuel pour ce complément de réponse.

D.

Je précise sur ce qu'a dit le gaulois : le RAID1 est plus rapide en
lecture dans le cas général (parce qu'on peut lire sur les deux disques
à la fois, en léger décalé), mais dans ton cas la lecture sera en gros
alignée sur le disque le plus rapide, et l'écriture sur le plus lent.


Avatar
Emmanuel Florac
Le Tue, 29 Aug 2006 16:10:13 +0200, Manu a écrit :


Est-ce que certaines cartes RAID ne pourraient pas profiter de leur
batteries et d'un cache en écriture pour masquer la différence entre 2
disques ?


Oui, tant qu'on écrit par bouffée de taille inférieure au cache...

La carte répond au driver que la requete d'écriture s'est bien passée
dés qu'un disque (le plus rapide) a répondu. Et si le disque le moins
rapide réponds différemment le RAID est considéré comme défectueux et le
disque en question est désactivé.


Non, ce n'est pas le cas. Un disque n'est désactivé que s'il renvoie des
erreurs, pas s'il est lent!

--
Je suis riche des biens dont je sais me passer.
Louis-Jean-Baptiste Etienne Vigée.

Avatar
Manu
Emmanuel Florac wrote:

Je précise sur ce qu'a dit le gaulois : le RAID1 est plus rapide en
lecture dans le cas général (parce qu'on peut lire sur les deux disques
à la fois, en léger décalé), mais dans ton cas la lecture sera en gros
alignée sur le disque le plus rapide, et l'écriture sur le plus lent.


Est-ce que certaines cartes RAID ne pourraient pas profiter de leur
batteries et d'un cache en écriture pour masquer la différence entre 2
disques ?
La carte répond au driver que la requete d'écriture s'est bien passée
dés qu'un disque (le plus rapide) a répondu. Et si le disque le moins
rapide réponds différemment le RAID est considéré comme défectueux et le
disque en question est désactivé.

Avatar
Manu
Emmanuel Florac wrote:
La carte répond au driver que la requete d'écriture s'est bien passée
dés qu'un disque (le plus rapide) a répondu. Et si le disque le moins
rapide réponds différemment le RAID est considéré comme défectueux et le
disque en question est désactivé.


Non, ce n'est pas le cas. Un disque n'est désactivé que s'il renvoie des
erreurs, pas s'il est lent!


Par "réponds différemment" j'entendais réponds par une erreur.