Ce document explique comment fonctionnent les performances de Google Cloud Hyperdisk. Vous pourrez ainsi comprendre les performances de vos volumes Hyperdisk et sélectionner le type d'Hyperdisk adapté à votre charge de travail.
Hyperdisk est l'option de stockage de blocs durable recommandée par Google Cloud. Pour en savoir plus sur Hyperdisk, consultez À propos d'Hyperdisk.
Pour connaître les limites de performances détaillées, consultez Limites de performances Hyperdisk.
Pour examiner les performances actuelles ou passées d'un volume Hyperdisk, consultez Examiner les métriques de performances des disques.
Terminologie et unités
Les performances Hyperdisk, telles que décrites dans ce document, font référence aux IOPS et au débit.
- IOPS est l'acronyme d'opérations d'entrée/de sortie par seconde). Il s'agit du nombre de lectures et d'écritures individuelles que le volume effectue ou peut effectuer en une seconde.
- Le débit correspond au nombre d'octets qui peuvent être lus ou écrits sur un volume en une seconde. Le débit est mesuré en Mio/s.
Les mesures de taille sont exprimées en Gio ou en Tio.
Terminologie des types de machines
Le terme instance de calcul fait référence à une instance de machine virtuelle (VM) ou à une instance Bare Metal. Le type de machine d'une instance de calcul est la combinaison spécifique de ses propriétés, comme sa série de machines et son nombre de processeurs virtuels.
Dans ce document, les types de machines sont indiqués au format suivant : M-*-N
, où :
-
M
est la série de machines, par exempleC3
. -
*
représente toutes les configurations de mémoire et de processeur, par exemplestandard
ouhighcpu
. N
correspond au nombre de processeurs virtuels, de processeurs ou à la désignation du GPU (par exemple, 22 pour une instance avec 22 processeurs virtuels ou8g
pour une instance avec 8 GPU).
- Types de machines Bare Metal (
*-metal
) - types de machines dotés de disques SSD locaux associés (
*-lssd
).
Par exemple, c3-*-176
fait référence à tous les types de machines C3 avec 176 processeurs virtuels, à savoir c3-standard-176
, c3-highcpu-176
, c3-highmem-176
et c3-standard-176-lssd
. Pour en savoir plus, consultez la page Terminologie Compute Engine.
Résumé des performances Hyperdisk
Lorsque vous associez des volumes Hyperdisk à une instance, les performances maximales que vous pouvez obtenir dépendent du scénario, comme indiqué dans le tableau suivant.
Nombre de volumes Hyperdisk |
Performances maximales |
---|---|
1 | Les performances du volume correspondent à la valeur la plus faible entre :
|
Deux hyperdisques ou plus du même type | Les performances totales pour tous les volumes correspondent à la valeur la plus faible entre :
|
Deux types d'hyperdisques ou plus | Les performances totales pour tous les volumes correspondent à la valeur la plus faible entre :
|
Pour connaître les limites par type d'Hyperdisk, consultez Limites de performances par type d'Hyperdisk.
Pour connaître les limites par type de machine, consultez Limites de performances par type de machine.
À propos des performances provisionnées pour Hyperdisk
Vous pouvez spécifier un niveau de performances cible pour un volume Hyperdisk. La valeur des IOPS ou du débit que vous spécifiez ou provisionnez est appelée performances provisionnées.
Vous pouvez provisionner les performances d'un volume lorsque vous le créez. Vous pouvez également augmenter ou diminuer les performances lorsque le volume est utilisé, sans avoir à augmenter sa taille.
Les performances provisionnées ne sont pas un niveau de performances garanti. Il s'agit plutôt du niveau de performances cible dont vous pensez que le volume aura besoin pendant les périodes d'utilisation maximale. Les performances réelles dépendent des limites de l'instance qui utilise le volume et de plusieurs autres facteurs.
Niveaux de performances par défaut
Il n'est pas obligatoire de provisionner un niveau de performances pour un volume Hyperdisk. Si vous ne spécifiez pas de valeur, par exemple parce que vous ne savez pas exactement de combien d'IOPS ou de débit votre charge de travail a besoin, Compute Engine crée le volume avec des valeurs par défaut. Vous pourrez augmenter ou diminuer la valeur ultérieurement. Les valeurs par défaut varient selon le type d'Hyperdisk. Elles sont listées dans la section Valeurs par défaut des IOPS et du débit pour Hyperdisk Balanced, Hyperdisk Balanced à haute disponibilité, Hyperdisk Extreme, Hyperdisk Throughput ou Hyperdisk ML.
Limites de performances provisionnées
Les performances maximales que vous pouvez provisionner dépendent du type d'Hyperdisk et de la taille du volume.
Limite pour le type Hyperdisk
Chaque type d'Hyperdisk possède un niveau de performances maximal que vous pouvez provisionner. Certains types d'Hyperdisk vous permettent de provisionner des IOPS, du débit ou les deux. Si vous ne pouvez pas provisionner de débit, celui du volume dépend des IOPS provisionnées. De même, si vous ne pouvez pas provisionner d'IOPS, les IOPS du volume dépendent du débit que vous provisionnez.
Par exemple, vous pouvez provisionner le débit pour les volumes Hyperdisk ML, mais pas les IOPS. Le taux d'IOPS par rapport au débit pour Hyperdisk ML est de 16 IOPS par Mio/s de débit provisionné. Ainsi, si vous créez un volume Hyperdisk ML avec un débit de 100 000 Mio/s, le volume est provisionné avec 1 600 000 IOPS.
Limites basées sur la taille
Les performances maximales que vous pouvez provisionner varient en fonction de la taille du volume. Par exemple, pour un volume Hyperdisk Balanced de 10 Tio, vous pouvez provisionner entre 3 000 et 160 000 IOPS, mais pour un volume de 50 Gio, vous pouvez provisionner entre 3 000 et 25 000 IOPS.
Pour en savoir plus sur les limites basées sur la taille pour chaque type d'Hyperdisk, consultez la section Limites de taille et de performances sur les pages Hyperdisk équilibré, Hyperdisk équilibré à haute disponibilité, Hyperdisk Extreme, Hyperdisk Throughput et Hyperdisk ML.
Le tableau suivant indique les performances maximales que vous pouvez provisionner pour chaque type d'hyperdisque.
Type de volume Hyperdisk | Performances provisionnables maximales par volume | Débit personnalisable | IOPS personnalisables |
---|---|---|---|
Volume Hyperdisk équilibré | 160 000 IOPS 2 400 Mio/s |
Oui | Oui |
Haute disponibilité sur Hyperdisk équilibré | 100 000 IOPS 1 200 Mio/s |
Oui | Oui |
Hyperdisk Extreme | 350 000 IOPS | Non. 250 Mio/s pour 1 000 IOPS, jusqu'à 5 000 Mio/s | Oui |
Hyperdisk ML | 1 200 000 Mio/s | Oui | Non. 16 IOPS par Mio/s de débit, jusqu'à 19 200 000 IOPS |
Hyperdisk Throughput | 2 400 Mio/s | Oui | Non. 4 IOPS par Mio/s de débit, jusqu'à 9 600 IOPS. |
Performances à l'état stable
Pour les charges de travail sensibles à la variabilité des performances, envisagez d'utiliser une série de machines offrant des performances à l'état stable. La limite de performances à l'état stable correspond au niveau de performances qu'une instance peut maintenir sur tous les volumes associés. Par comparaison, le niveau de performances maximales correspond au niveau de performances le plus élevé qu'une instance peut atteindre.
Les limites de performances à l'état stable ne constituent pas un contrat de niveau de service.
Pour qu'un volume Hyperdisk atteigne une limite de performances spécifique à l'état stable, ses performances provisionnées doivent être égales ou supérieures à la limite de l'état stable.
La limite de performances à l'état stable est partagée entre tous les disques associés à l'instance.
Séries de machines offrant des performances stables
Les séries de machines suivantes offrent des performances à l'état stable :
Configurer une charge de travail pour répondre aux performances provisionnées
Les performances réelles d'un volume Hyperdisk (les performances observées lorsqu'il est associé à une instance) ne peuvent pas dépasser les limites suivantes :
- Performances provisionnées du volume
- Limites de performances spécifiques à l'instance, y compris les limites spécifiques au type Hyperdisk
- Pour les volumes Hyperdisk équilibré et Hyperdisk équilibré à haute disponibilité, les limites de consommation simultanée pour les performances de référence
Par conséquent, pour vous assurer que votre volume peut atteindre les performances provisionnées, tenez compte des facteurs suivants :
Choisissez un type de machine compatible avec les performances provisionnées du volume pour le type Hyperdisk. Consultez les consignes dans Limites de performances spécifiques aux instances pour chaque type d'Hyperdisk.
Si vous souhaitez utiliser différents types d'Hyperdisk avec l'instance, consultez les informations de la section Limites de performances maximales pour le type de machine.
Si votre projet comporte plus de 150 volumes Hyperdisk Balanced et Hyperdisk Balanced à haute disponibilité dans la même zone, consultez les informations de la section Limites de consommation simultanée pour les performances de référence.
Des facteurs tels que la taille des E/S et la conception de l'application, bien qu'ils ne soient pas des limites de performances, ont également une incidence sur les performances. Pour en savoir plus sur ces facteurs, consultez Facteurs spécifiques aux charges de travail qui affectent les performances.
Impact des limites de performances des instances sur les performances Hyperdisk
Chaque instance de calcul présente les limites de performances suivantes, en fonction de son type de machine :
- Une limite de performances pour le type Hyperdisk
- Une limite de performances globale pour l'instance
Chaque limite s'applique dans des situations spécifiques.
Limites de performances des instances pour chaque type d'Hyperdisk
Chaque instance a une limite de performances pour tous les volumes Hyperdisk d'un type donné que vous associez à l'instance.
Quand cette limite s'applique : lorsque vous associez un ou plusieurs volumes Hyperdisk du même type à une instance. Pour que chaque volume atteigne les performances provisionnées, la limite de performances de l'instance doit être supérieure à la somme des performances provisionnées de tous les volumes. Sinon, les performances des volumes ne peuvent pas dépasser la limite de performances de l'instance.
Exemple
Supposons que vous disposiez d'un volume Hyperdisk Throughput, hdt-disk-1
, avec un débit provisionné de 600 Mio/s et que vous souhaitiez l'associer à une instance c3-*-4
.
Les instances c3-*-4
sont soumises aux limites de débit suivantes :
Type de volume Hyperdisk | Débit maximal (Mio/s) |
---|---|
Volume Hyperdisk équilibré | 400 |
Hyperdisk Extreme | Non compatible |
Hyperdisk Throughput | 240 |
Haute disponibilité sur Hyperdisk équilibré | 400 |
Hyperdisk ML | 400 |
Si vous associez hdt-disk-1
à la VM, les performances réelles du volume ne peuvent pas dépasser 240 Mio/s. Si vous associez un volume Hyperdisk avec équilibrage, les performances de ce volume ne peuvent pas dépasser 400 Mio/s.
Si vous associez deux volumes Hyperdisk Balanced à la VM, les performances combinées des deux volumes Hyperdisk Balanced ne peuvent toujours pas dépasser 400 Mio/s. Cela est vrai quelle que soit la capacité de performances provisionnée des deux volumes.
Les limites de performances de chaque Hyperdisk par type de machine sont listées dans Limites de performances par type d'Hyperdisk.
Limite de performances globales pour une instance
Chaque instance peut atteindre une limite de performances globale. Cette limite est partagée entre tous les volumes associés à l'instance.
Quand cette limite s'applique : lorsque vous associez plusieurs types d'Hyperdisk à une instance. Les performances réelles combinées de tous les volumes ne peuvent pas dépasser la limite de performances de l'instance, quelles que soient les performances provisionnées de chaque volume.
Si l'instance est compatible avec Persistent Disk, tous les volumes Persistent Disk associés partagent également la même limite.
Exemple
Supposons que vous disposiez d'une instance c3-*-22
, dont le débit maximal est de 1 800 Mio/s.
Vous associez les ressources suivantes à la VM :
- Deux volumes Hyperdisk équilibré, chacun avec un débit provisionné de 900 Mio/s.
- 1 volume Hyperdisk Throughput avec un débit provisionné de 500 Mio/s
Les performances combinées de tous les volumes ne peuvent pas dépasser 1 800 Mio/s.
Pour obtenir la liste des limites, consultez Limites de performances par type de machine.
Limites de consommation simultanée pour les performances de référence
Compute Engine limite la quantité de performances gratuites que les volumes Hyperdisk Balanced à haute disponibilité et Hyperdisk Balanced d'un projet situés dans la même zone ou le même pool de stockage peuvent consommer en même temps. Cette limite est appelée limite de consommation simultanée pour les performances de référence.
Quand cette limite s'applique : cette limite s'applique aux projets comportant plus de 150 volumes Hyperdisk équilibrés et Hyperdisk équilibrés à haute disponibilité dans la même zone. Cette limite s'applique également aux volumes d'un pool de stockage Hyperdisk Balanced si le pool de stockage n'utilise pas le provisionnement des performances avancées.
Les performances provisionnées pour les volumes Hyperdisk équilibré et Hyperdisk équilibré à haute disponibilité sont composées de performances facturables et gratuites. Les 3 000 premières IOPS et les 140 Mio/s de débit que vous provisionnez sont gratuits. On parle de performances de référence. Les performances provisionnées qui dépassent 3 000 IOPS ou 140 Mio/s sont considérées comme des performances facturables. Par exemple, un volume provisionné avec 4 000 IOPS a 1 000 IOPS facturables.
Les volumes Hyperdisk équilibrés à haute disponibilité et Hyperdisk équilibrés d'un même projet et d'une même zone sont soumis aux limites de consommation simultanée suivantes pour les performances de référence :
- Limite de consommation simultanée pour les IOPS de référence : 500 000 IOPS
- Limite de consommation simultanée pour le débit de référence : 50 Gio/s
Fonctionnement des limites de consommation simultanée pour les performances de référence
Dans un projet, vous pouvez provisionner plus de 500 000 IOPS et 50 Gio/s de débit pour tous les volumes d'une même zone. Toutefois, les volumes ne peuvent pas consommer simultanément plus de 500 000 IOPS ou 50 Gio/s de débit.
De plus, les performances simultanées totales ne peuvent pas dépasser les performances de référence totales que vous avez provisionnées. Par exemple, si vous avez provisionné un total de 100 000 IOPS de référence dans la même zone et le même projet, la limite de consommation simultanée pour les performances de référence est de 100 000 IOPS.
Limites de consommation totale dans un même projet et une même zone
Chaque zone d'un projet est soumise à une limite de consommation simultanée totale. Il s'agit des performances totales (performances facturables et de référence) que tous les disques Hyperdisk équilibrés et Hyperdisk équilibrés à haute disponibilité peuvent utiliser en même temps.
Pour chaque zone d'un projet, la limite de consommation simultanée totale correspond à la somme des valeurs suivantes :
- Performances facturables provisionnées pour tous les volumes Hyperdisk équilibré et Hyperdisk équilibré à haute disponibilité de la zone
- Limite de consommation simultanée de la zone pour les performances de référence, qui correspond à la plus petite des valeurs suivantes :
- Somme des IOPS ou du débit de base provisionnés pour tous les volumes d'une même zone
- 500 000 IOPS ou 50 Gio/s de débit
Provisionner les performances pour répondre aux exigences de consommation simultanée
Pour vous assurer d'avoir provisionné suffisamment de performances pour votre charge de travail, comparez les valeurs suivantes :
- Performances totales que vos volumes sont censés consommer en même temps
- Limite de consommation simultanée totale pour les volumes Hyperdisk équilibré et Hyperdisk équilibré à haute disponibilité du projet qui se trouvent dans la même zone
Si les performances totales que vous prévoyez que vos volumes consomment dépassent la limite de consommation simultanée totale, Compute Engine limitera les performances de vos volumes, sauf si vous provisionnez des performances facturables supplémentaires.
Prenons les exemples suivants.
Exemple 1
Votre projet comporte 10 volumes Hyperdisk équilibré dans la zone A, et chaque volume est provisionné avec 100 000 IOPS, pour un total de 1 000 000 IOPS provisionnées. Vous vous attendez à ce que les volumes consomment simultanément 800 000 IOPS.
Pour déterminer la limite de consommation simultanée totale, ajoutez le nombre total d'IOPS facturables provisionnées à la limite de consommation simultanée du projet pour les performances de référence.
- Nombre total d'IOPS facturables provisionnées : 970 000 ((100 000 – 3 000) * 10 disques)
- La limite de consommation simultanée pour les performances de référence est de 30 000 IOPS, car il s'agit de la plus petite des valeurs suivantes :
- Total des IOPS de référence provisionnées : 30 000 (3 000 * 10)
- 500 000 IOPS
Les performances totales pouvant être consommées simultanément pour la zone A sont de 1 000 000 IOPS (30 000 + 970 000). Les performances des volumes ne seront pas limitées, car le nombre total d'IOPS de référence provisionnées est inférieur à 500 000.
Exemple 2
Votre projet comporte 500 volumes Hyperdisk équilibré à haute disponibilité dans la zone C, chacun étant provisionné avec 3 500 IOPS, pour un total de 1 750 000 IOPS provisionnés. Vous vous attendez à ce que les volumes consomment simultanément 1 000 000 d'IOPS.
Pour déterminer la limite de consommation simultanée totale, ajoutez le nombre total d'IOPS facturables provisionnées à la limite de consommation simultanée du projet pour les performances de référence.
- Le nombre total d'IOPS facturables provisionnées est de 250 000 ((3 500 – 3 000) * 500 disques).
- La limite de consommation simultanée pour les performances de référence est de 500 000 IOPS, car il s'agit de la plus petite des valeurs suivantes :
- Total des IOPS de référence provisionnées : 1 500 000 (3 000 * 500)
- 500 000 IOPS
Les performances totales pouvant être consommées simultanément pour la zone C sont de 750 000 IOPS (250 000 + 500 000). La consommation simultanée d'IOPS de référence des volumes est limitée à 500 000 IOPS.
Pour consommer simultanément 1 000 000 d'IOPS, provisionnez davantage de performances facturables pour les volumes.
Facteurs spécifiques à la charge de travail qui affectent les performances
Cette section aborde les facteurs spécifiques à la charge de travail qui affectent les limites de débit et d'IOPS que vos volumes Hyperdisk peuvent atteindre. Pour en savoir plus sur l'amélioration des performances, consultez Optimiser les performances d'Hyperdisk.
Pour atteindre les niveaux maximum d'IOPS et de débit offerts par les volumes Hyperdisk, vous devez prendre en compte les paramètres de charge de travail suivants :
-
Taille des E/S : vous devez utiliser des tailles de bloc spécifiques pour atteindre les limites d'IOPS et de débit, comme suit :
- Les limites maximales d'IOPS nécessitent une taille d'E/S de 4 Ko.
- Les limites de débit maximales nécessitent une taille d'E/S d'au moins 256 Ko.
- Longueur de la file d'attente : la longueur de la file d'attente correspond au nombre de requêtes en attente d'un volume. Pour atteindre les limites de performances maximales, vous devez ajuster la longueur de votre file d'attente en fonction de la taille d'E/S, des IOPS et de la sensibilité à la latence de votre charge de travail. La longueur de file d'attente optimale varie pour chaque charge de travail, mais elle doit généralement être supérieure à 256.
- Nombre de volumes associés : pour obtenir les meilleures performances, nous vous recommandons d'associer huit volumes ou moins à une seule instance.
Étapes suivantes
- Consulter les limites de performances pour les types Hyperdisk
- Consulter les limites de performances pour tous les types de machines
- Découvrez comment optimiser les performances de vos volumes Hyperdisk.