Comment les IOPS de stockage changent-ils en réponse à la capacité du disque?

12

Toutes choses étant égales par ailleurs, comment les performances IOPS d'une baie de stockage changeraient-elles si l'on utilisait des disques plus gros?

Par exemple, prenez un tableau avec 10 disques de 100 Go.

Mesurer les IOPS pour les écritures séquentielles de blocs de 256 Ko (ou toute métrique IOPS)

Supposons que l'IOPS mesuré résultant soit de 1000 IOPS.

Changez la matrice pour une avec 10 disques de 200 Go. Format avec la même configuration RAID, la même taille de bloc, etc.

S'attendrait-on à ce que les IOPS restent les mêmes, augmentent ou diminuent? Le changement serait-il à peu près linéaire? c.-à-d. augmenter de 2 fois ou diminuer de 2 fois (car j'ai augmenté la capacité du disque de 2 fois)

Répétez ces questions avec des disques de 10 X 50 Go.

Modifier: plus de contexte

Cette question a résulté d'une conversation entre mon équipe Sysadmin qui n'est pas bien familiarisée avec tout ce qui concerne le stockage. (Confortable avec de nombreux aspects du stockage, mais pas avec les détails de la gestion d'un SAN ou autre). Nous recevons une grande pile de nouveaux plateaux Netapp qui ont une capacité de disque par disque plus élevée - double capacité - que nos plateaux existants. Le commentaire a été émis que les IOPS des nouveaux plateaux seraient inférieurs simplement parce que les disques étaient plus gros. Puis une analogie avec la voiture est venue pour expliquer cela. Aucun des deux commentaires ne me convenait bien, je voulais donc le transmettre à The Team, c'est-à-dire Stack-Exchange-land.

L'analogie avec les voitures concernait deux voitures, avec des accélérations différentes, la même vitesse de pointe et un quart de mile. Modifiez ensuite la distance à un demi-mille. En fait, je ne me souviens pas de l'analogie exacte, mais puisque j'en ai trouvé un autre sur l'interwebz qui était similaire, je me suis dit que c'était probablement une analogie IOPS courante.

À certains égards, la réponse réelle à la question n'a pas beaucoup d'importance pour moi, car nous n'utilisons pas ces informations pour évaluer un achat. Mais nous devons évaluer la meilleure façon de fixer les plateaux à une tête existante et la meilleure façon de tailler des agrégats et des volumes.

JDS
la source
2
Les opérations d'E / S par seconde ne vont pas augmenter si la capacité du disque augmente - elles sont liées au taux de transfert de bout en bout et au taux d'E / S du disque (et la mise en cache). Quel est le problème spécifique que vous essayez de résoudre?
EightBitTony
3
Est-ce hypothétique (et donc hors sujet)?
mfinni
Cela ne change pas vraiment ... à moins que vous ne parliez de limiter le mouvement de la tête à travers le plateau via des coups courts ... Ou des SSD surapprovisionnés ...
ewwhite
De plus, les disques plus grands contiennent généralement des contrôleurs, des moteurs et des têtes plus modernes, les petits disques réutilisent généralement les générations précédentes qui sont "assez bonnes", donc les disques haute capacité sont souvent plus rapides mais pas parce qu'ils sont plus grands mais parce qu'ils sont mieux fait.
Vality
2
@mfinni: Malheureusement, il existe des services nuageux qui ont une restriction artificielle sur les IOPS en fonction de la taille du disque (virtuel). Voir ma réponse pour plus de détails. J'ai déjà vu des "devops" déroutés par cela.
dotancohen

Réponses:

8

Pour répondre directement à votre question - toutes choses étant égales par ailleurs = aucun changement lorsque le Go change.

Vous ne mesurez pas les IOPS avec GB. Vous utilisez le temps de recherche et la latence.

Je pourrais tout réécrire ici, mais ces exemples ci-dessous font déjà tout cela et je le répéterais simplement:

https://ryanfrantz.com/posts/calculating-disk-iops.html

http://www.big-data-storage.co.uk/how-to-calculate-iops/

http://www.wmarow.com/strcalc/

http://www.thecloudcalculator.com/calculators/disk-raid-and-iops.html

Ian Macintosh
la source
Mais le temps de recherche et la latence n'augmentent-ils pas si un disque a une plus grande capacité?
JDS
Pas nécessairement @JDS. Parfois, ils le font et parfois non parce que les fabricants remplissent continuellement plus de bits sur des plateaux (plus de Go) et améliorent également en continu d'autres aspects de leurs disques durs. Lorsque le disque devient plus gros, il obtient souvent simultanément d'autres mises à niveau matérielles, ce qui pourrait réduire votre temps de recherche ou votre latence, augmentant ainsi votre IOPS. Mais c'est tout un point discutable car la Go n'a pas de relation directe avec les IOPS, seuls les temps de recherche et la latence de lecture et d'écriture affectent les IOPS.
Ian Macintosh
11

Je sais que c'est probablement une question hypothétique ... Mais le monde informatique ne fonctionne vraiment pas de cette façon. Il y a des contraintes réalistes à considérer, ainsi que d'autres choses qui peuvent influencer les IOPS ...

  • Les disques de 50 Go et 100 Go n'existent plus vraiment. Pensez plus: 72, 146, 300, 450, 600, 900, 1200 Go sur les disques d'entreprise et 500, 1 000, 2 000, 3 000, 4 000, 6 000 Go sur les supports de stockage en vrac quasi-ligne / moyenne.

  • Il y a tellement d'abstraction dans le stockage moderne; mise en cache disque, mise en cache contrôleur, déchargement SSD, etc. que toute différence serait difficile à discerner.

  • Vous devez prendre en compte différents facteurs de forme d'entraînement, interfaces et vitesses de rotation. Les disques SATA ont un profil de performances différent de SAS ou SAS nearline . Les disques à 7 200 tr / min se comportent différemment de 10 000 tr / min ou 15 000 tr / min. Et la disponibilité des différentes vitesses de rotation est limitée à certaines capacités.

  • Disposition du contrôleur physique. Les extenseurs SAS, les contrôleurs RAID / SAS peuvent influencer les IOPS, selon la disposition du disque, les taux de sursouscription, que la connectivité soit interne au serveur ou dans un boîtier externe. Un grand nombre de disques SATA fonctionnent mal sur les modules d'extension et pendant les conditions d'erreur de lecteur .

  • Une partie de cela peut être influencée par la fragmentation, la capacité utilisée sur la matrice de disques.

  • Avez-vous déjà entendu parler de coups courts ?

  • RAID logiciel contre matériel, prélecture, profilage adaptatif ...

Qu'est-ce qui vous fait croire que la capacité aurait un impact sur les performances en premier lieu? Pouvez-vous fournir plus de contexte?

Éditer:

Si le type de disque, le facteur de forme, l'interface et la capacité utilisée sont les mêmes, il ne devrait pas y avoir de différence appréciable dans les IOPS. Supposons que vous passiez de 300 Go à 600 Go de disques SAS 10k d'entreprise. Avec le même nombre de broches, vous ne devriez voir aucune différence de performances ...

Cependant, si les étagères de disques NetApp que vous mentionnez utilisent des fonds de panier SAS 6 Gbit / s ou 12 Gbit / s par rapport à un héritage 3 Gbit / s, vous constaterez peut-être un changement de débit pour passer à un équipement plus récent.

ewwhite
la source
J'ai modifié ma question d'origine pour ajouter du contexte. Les chiffres que j'ai choisis n'étaient pas du monde réel, ils étaient juste pour faciliter les calculs hypothétiques. De plus, la plupart de vos autres commentaires entrent dans la colonne "toutes choses égales par ailleurs". Supposons que la seule chose qui change soit la capacité des disques individuels
JDS
@JDS Voir ma modification ci-dessus.
ewwhite
9

Un endroit où il existe une relation directe entre la taille du disque et les IOPS se trouve dans le cloud Amazon AWS et d'autres «services nuageux». Deux types de services AWS ( Elastic Block Store et Relational Database Service ) fournissent des IOPS plus élevés pour des tailles de disque plus importantes.

Notez qu'il s'agit d' une restriction artificielle placée par Amazon sur leurs services. Il n'y a aucune raison liée au matériel pour que ce soit le cas. Cependant, j'ai vu des types de devops qui ne sont pas familiers avec du matériel non virtualisé estimant que cette restriction convient également aux systèmes de bureau et similaires. La relation taille de disque / IOPS est une restriction de marketing cloud, pas une restriction matérielle.

dotancohen
la source
1
C'est un bon point. Nous examinons les SLA de performance pour fournir des performances et des capacités aux clients. Et nous envisageons d'utiliser un modèle basé sur les niveaux de `` iops par téraoctet '' - l'idée étant que nous pouvons l'utiliser pour informer nos cycles de mise à niveau - acheter des SSD si le rapport IOP: TB est élevé et SATA s'il est faible. Pas à cause de limites ou de contraintes de tableau, mais parce que nous devons maîtriser les modèles de coût par rapport aux modèles de charge.
Sobrique
2
Intéressant. Je n'ai pas pensé au contexte nuageux ici. Je suppose que cela montre la perspective d'où je viens ...
ewwhite
4

Je dois souligner que les IOPS ne sont pas une excellente mesure de la vitesse sur les écritures séquentielles, mais laisse simplement aller avec.

Je soupçonne que les temps de recherche et d'écriture des têtes de disque sont assez cohérents malgré la taille des disques. Il y a 20 ans, nous utilisons tous des disques de 60 Go avec (à peu près - certainement pas linéairement) les mêmes vitesses de lecture / écriture.

Je fais une supposition éclairée mais je ne pense pas que la densité du disque soit en relation linéaire avec les performances du disque.

Par exemple, prenez un tableau avec 10 disques de 100 Go.

Mesurer les IOPS pour les écritures séquentielles de blocs de 256 Ko (ou toute métrique IOPS)

Supposons que l'IOPS mesuré résultant soit de 1000 IOPS.

D'accord

Changez la matrice pour une avec 10 disques de 200 Go. Format avec la même configuration RAID, la même taille de bloc, etc.

S'attendrait-on à ce que l'IOPS reste le même, augmente ou diminue?

Restent probablement à peu près équivalents les uns aux autres.

Le changement serait-il à peu près linéaire?

L'histoire des médias en rotation me dit qu'il n'y a probablement aucune relation.

Répétez ces questions avec des disques de 10 X 50 Go

Encore une fois, à peu près équivalent.

Votre vitesse, dans tous ces cas, vient du fait que le RAID agit comme un seul disque avec dix têtes d'écriture, vous pouvez donc envoyer 1 / 10ème du travail en parallèle à chaque disque.

Bien que je n'ai pas de chiffres précis à vous montrer, mon expérience passée me dit que l'augmentation des performances de vos disques n'est pas aussi simple que d'obtenir plus de capacité.

Malgré ce que les spécialistes du marketing vous disent est l'innovation, avant le début des disques à semi-conducteurs bon marché, il y a eu peu de développement significatif dans la performance des supports de filature au cours des 20 dernières années, probablement il n'y a que beaucoup de choses que vous pouvez retirer de la rouille et seulement si vite que nous pouvons obtenir nos modèles actuels de têtes de disque pour aller.

Matthew Ife
la source
Il pourrait y avoir une certaine amélioration en raison de l'augmentation des plateaux dans un lecteur ou de l'augmentation de la densité du plateau (moins de mouvement par octet), mais je doute que ce soit énorme.
Bill Weiss
J'anticipe ce que vous obtenez en densité que vous payez en précision.
Matthew Ife
vous aviez des disques de 60 Go en 1994!?
warren
3

Les performances ajoutées aux balances de stockage avec chaque broche ajoutée. La vitesse de rotation du lecteur est le facteur le plus important, donc l'ajout d'un lecteur de 10 000 tr / min donnera plus de performances (en termes d'E / S en IO aléatoire ou de Mo / s en streaming IO) qu'un lecteur de 7,2 k RPM. La taille du lecteur n'a pratiquement aucun effet.

Les gens disent que les petits disques vont plus vite simplement parce que vous avez besoin de plus de broches par To utilisable. L'augmentation de la taille du lecteur de ces broches ne diminuera pas les performances, mais elle vous permettra d'ajuster plus de données sur les disques, ce qui peut entraîner une charge de travail accrue.

Basilic
la source
2

Si vous supposez que tout le reste est égal, les caractéristiques de performance des disques de plus grande capacité ne changent pas beaucoup. Un lecteur FC à 10 000 tr / min a des caractéristiques très similaires, qu'il s'agisse de 300 Go ou de 3 To. Les plateaux tournent au même rythme, et les têtes recherchent à la même vitesse.

Débit soutenu également - pas beaucoup de différence. C'est à l'origine de nombreux problèmes de performances, car dans de nombreux cas, les gens achètent des téraoctets, ils n'achètent pas d'IOP ou de Mo / s.

Et il faudra 10 fois plus de temps pour reconstruire / copier un disque de 3 To comme un disque de 300 Go.

En conséquence, nous avons dû examiner une surcapacité substantielle pour les projets de stockage - la taille des disques augmente toujours, mais leur capacité de performance n'est pas beaucoup. Donc, dans au moins un cas, nous avons acheté environ 400 To de stockage pour répondre à une exigence de 100 To, car nous avons besoin des broches.

Sobrique
la source
0

Si vous faites tourner des disques (pas des disques SSD), toutes choses étant égales par ailleurs, la vitesse de transfert est plus élevée si vous utilisez les pistes extérieures du disque. Cela se produirait automatiquement si vous utilisez un disque qui n'est que partiellement rempli. Dans le même temps, si un disque n'est que partiellement rempli, votre mouvement de tête moyen serait moindre et le nombre de mouvements de tête serait moindre car il y a plus de données par piste.

C'est vrai que vous utilisiez un seul disque ou un lecteur RAID.

Maintenant, si vous comparez des disques de 100 Go et 2000 Go, vous pouvez être sûr que tout le reste n'est pas égal. Mais si le même fabricant propose des disques de 500 Go, 1 To, 1,5 To et 2 To avec un, deux, trois et quatre plateaux, alors tout le reste est probablement égal, et 10 x 500 Go seront plus lents que 10 x 2 To pour stocker 4 To de données (il n'y aura pas de différence si vous stockez 100 Go uniquement, car les disques de 500 Go seront également presque vides).

Mais pour les disques RAID, vous ne serez pas tellement limité par la vitesse de transfert, mais par la latence de rotation. Un RPM plus élevé sera donc plus important. Et vous trouverez souvent un régime plus élevé avec une capacité inférieure. D'un autre côté, si vous optez pour un régime élevé / faible capacité, vous pouvez également regarder les disques SSD.

gnasher729
la source