Cette page décrit les performances approximatives que Spanner peut atteindre dans des conditions optimales, les facteurs susceptibles d'affecter ces performances ainsi que des conseils pour les tests et la résolution des problèmes associés.
Les informations de cette page s'appliquent aux bases de données GoogleSQL et PostgreSQL.
Améliorations des performances et du stockage
Des améliorations des performances et du stockage ont été déployées pour toutes les configurations d'instance Spanner régionales, birégionales et multirégionales. Pour profiter de ces améliorations, qui sont proposées sans frais supplémentaires, vous n'avez pas besoin de modifier votre application ni de configurer manuellement quoi que ce soit dans vos instances Spanner. Ces améliorations des performances se traduisent par un débit plus élevé et une latence plus faible dans les nœuds Spanner, dans toutes les configurations d'instance.
Débit de performances accru
Toutes les configurations d'instance Spanner offrent de meilleures performances et un débit accru. Le tableau suivant indique le débit approximatif (requêtes par seconde) pour les configurations d'instances Spanner :
Type de configuration de l'instance | Maximum en lecture (RPS par région) | Pic d'écritures (RPS total) | Pic d'écritures avec écritures optimisées pour le débit (RPS total) | ||
---|---|---|---|---|---|
Régional | SSD : 22 500 HDD : 1 500 |
ou | SSD : 3 500 HDD : 3 500 |
SSD : 22 500 HDD : 22 500 |
|
Birégionale et multirégionale | SSD : 15 000 HDD : 1 000 |
ou | SSD : 2 700 HDD : 2 700 |
SSD : 15 000 HDD : 15 000 |
Pour en savoir plus sur le débit de performances de ces configurations d'instance, consultez Performances pour des charges de travail types. Pour en savoir plus sur l'utilisation de disques durs SSD et HDD pour stocker vos données, consultez Présentation du stockage hiérarchisé.
Les instructions de lecture sont fournies par région (car les opérations de lecture peuvent être diffusées depuis n'importe quelle région en lecture/écriture ou en lecture seule), tandis que les instructions d'écriture s'appliquent à l'ensemble de la configuration. Les instructions de lecture supposent que vous lisez des lignes uniques de 1 Ko. Les instructions d'écriture supposent que vous écriviez des lignes uniques à raison de 1 Ko de données par ligne.
Les performances d'écriture maximales à l'aide des écritures optimisées pour le débit sont obtenues avec un délai de traitement par lot de 100 ms.
En général, les débits en lecture et en écriture d'une instance Spanner évoluent de manière linéaire à mesure que vous ajoutez de la capacité de calcul (nœuds ou unités de traitement) à l'instance. Par exemple, si une instance Spanner à une seule région avec deux nœuds peut fournir jusqu'à 45 000 lectures par seconde, une instance Spanner à une seule région avec quatre nœuds peut fournir jusqu'à 90 000 lectures par seconde.
Si vous ne constatez pas les performances attendues pour votre charge de travail dans Spanner, consultez Résoudre les problèmes de régression des performances pour en savoir plus sur les causes courantes.
Stockage supplémentaire
Pour toutes les configurations d'instance Spanner régionales, birégionales et multirégionales, chaque nœud (1 000 unités de traitement) de capacité de calcul de l'instance dispose d'une capacité de stockage accrue de 10 Tio.
Performances pour des charges de travail types
Toutes les configurations d'instance Spanner offrent de meilleures performances et un débit accru.
Performances pour les configurations régionales
Chaque millier d'unités de traitement (1 nœud) de capacité de calcul peut fournir les performances maximales suivantes (à 100 % de processeur) dans une configuration d'instance régionale :
Maximum en lecture (RPS par région) | Pic d'écritures (RPS total) | Pic d'écritures avec écritures optimisées pour le débit (RPS total) | ||
---|---|---|---|---|
SSD : 22 500 HDD : 1 500 |
ou | SSD : 3 500 HDD : 3 500 |
SSD : 22 500 HDD : 22 500 |
Pour les configurations d'instances régionales qui autorisent les instances répliquées en lecture seule facultatives, celles-ci peuvent prendre en charge 7 500 lectures par seconde supplémentaires pour le stockage SSD et 500 lectures par seconde pour le stockage HDD.
Performances des configurations birégionales
Chaque millier d'unités de traitement (1 nœud) de capacité de calcul peut fournir les performances maximales suivantes (à 100 % de processeur) dans une configuration d'instance birégionale. Utilisez les écritures optimisées pour le débit pour augmenter le débit d'écriture au-delà des chiffres du tableau.
Nom de la configuration de base | Pic de lectures approximatif (RPS par région) | Pic d'écritures approximatif (RPS total) |
---|---|---|
dual-region-australia1 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
dual-region-germany1 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
dual-region-india1 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
dual-region-japan1 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
Les instructions de lecture sont fournies par région (car les opérations de lecture peuvent être diffusées de n'importe où), tandis que les instructions d'écriture s'appliquent à l'ensemble de la configuration. Les instructions de lecture et d'écriture supposent que vous lisiez et écriviez des lignes uniques à raison de 1 Ko de données par ligne.
Performances des configurations multirégionales
Chaque configuration d'instance multirégionale Spanner présente des caractéristiques de performances légèrement différentes en fonction de la topologie de réplication. Utilisez les écritures optimisées pour le débit pour augmenter le débit d'écriture au-delà des chiffres du tableau.
Chaque millier d'unités de traitement (1 nœud) de capacité de calcul peut fournir les performances maximales suivantes (à 100 % de processeur) :
Nom de la configuration de base | Pic de lectures approximatif (RPS par région) | Pic d'écritures approximatif (RPS total) |
---|---|---|
asia1 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
asia2 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
eur3 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
eur5 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
eur6 |
SSD : 15 000, 7 500 pour chaque instance répliquée en lecture seule facultative HDD : 1 000, 500 pour chaque instance répliquée en lecture seule facultative |
SSD : 2 700 HDD : 2 700 |
eur7 |
SSD : 15 000, 7 500 pour chaque instance répliquée en lecture seule facultative HDD : 1 000, 500 pour chaque instance répliquée en lecture seule facultative |
SSD : 2 700 HDD : 2 700 |
nam3 |
SSD : 15 000, 7 500 pour chaque instance répliquée en lecture seule facultative HDD : 1 000, 500 pour chaque instance répliquée en lecture seule facultative |
SSD : 2 700 HDD : 2 700 |
nam6 |
SSD : 15 000 dans us-central1 et us-east1 7 500 dans us-west1 et us-west2 HDD : 1 000 dans us-central1 et us-east1 500 dans us-west1 et us-west2 [1] |
SSD : 2 700 HDD : 2 700 |
nam7 |
SSD : 15 000, 7 500 pour chaque instance répliquée en lecture seule facultative HDD : 1 000, 500 pour chaque instance répliquée en lecture seule facultative |
SSD : 2 700 HDD : 2 700 |
nam8 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam9 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam10 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam11 |
SSD : 15 000, 7 500 pour chaque instance répliquée en lecture seule facultative HDD : 1 000, 500 pour chaque instance répliquée en lecture seule facultative |
SSD : 2 700 HDD : 2 700 |
nam12 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam13 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam14 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam15 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam16 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam-eur-asia1 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
nam-eur-asia3 |
SSD : 15 000 HDD : 1 000 |
SSD : 2 700 HDD : 2 700 |
- [1] :
us-west1
etus-west2
ne fournissent que la moitié des performances des RPS, car elles contiennent une instance dupliquée par région au lieu de deux.
Les instructions de lecture sont fournies par région (car les opérations de lecture peuvent être diffusées de n'importe où), tandis que les instructions d'écriture s'appliquent à l'ensemble de la configuration. Les instructions de lecture et d'écriture supposent que vous lisiez et écriviez des lignes uniques à raison de 1 Ko de données par ligne.
Exécuter vos charges de travail types sur Spanner
Exécutez toujours vos propres charges de travail types sur une instance Spanner lorsque vous planifiez la capacité afin de déterminer la meilleure allocation de ressources pour vos applications. L'outil PerfKit Benchmarker de Google utilise YCSB pour évaluer les services cloud. Vous pouvez suivre le tutoriel de PerfKitBenchmarker pour Spanner afin de créer des tests pour vos propres charges de travail. Vous devez alors régler les paramètres des fichiers de configuration d'analyse comparative yaml
pour vous assurer que le benchmark généré reflète les caractéristiques suivantes au sein de votre environnement de production :
- Taille totale de votre base de données
- Schéma (par exemple, taille des clés de ligne, nombre de colonnes, tailles des données de ligne)
- Modèle d'accès aux données (distribution des clés de ligne)
- Combinaison de lectures et d'écritures
- Type et complexité des requêtes
Reproduire les chiffres de référence
Pour reproduire les chiffres de référence, suivez le tutoriel sur l'analyse comparative de Spanner avec PerfKit Benchmarker en utilisant les fichiers yaml
correspondants dans le dossier throughput_benchmark
.
Pour comparer des instances dans une configuration d'instance ayant bénéficié d'améliorations des performances, assurez-vous que vos tests sont exécutés dans l'une de ces configurations d'instance améliorées.
Protection contre les défaillances zonales et régionales
Lorsque vous exécutez vos charges de travail en production, il est important de provisionner une capacité de calcul suffisante pour continuer à diffuser votre trafic en cas de perte d'une zone entière (pour les instances régionales) ou d'une région entière (pour les instances birégionales et multirégionales). Pour en savoir plus sur le processeur maximal recommandé, consultez Alertes en cas d'utilisation intensive du processeur.
Étapes suivantes
- Apprenez à concevoir un schéma Spanner.
- Découvrez comment surveiller les performances de Spanner.
- Découvrez comment résoudre les problèmes liés à Key Visualizer.
- En savoir plus sur les tarifs de Spanner.