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 figurant sur cette page s'appliquent à la fois à GoogleSQL et bases de données PostgreSQL.
Amélioration des performances et de l'espace de stockage
Les améliorations des performances et de l'espace de stockage sont en cours de déploiement pour tous Instance Spanner régionale et multirégionale configuration. Vous n'avez pas besoin de modifier votre application ni de configurer manuellement quoi que ce soit dans vos instances Spanner pour profiter de ces améliorations, qui sont proposées sans frais supplémentaires. Ces améliorations des performances se traduisent par débit plus élevé et meilleure latence dans les nœuds Spanner dans les deux des configurations d'instances régionales et multirégionales. Toutes les configurations d'instance ont augmenté le débit, et certaines ont augmenté l'espace de stockage.
Augmentation des performances du débit
Toutes les configurations d'instances Spanner ont été améliorées et offrent un débit plus élevé. Le tableau suivant fournit le débit approximatif (requêtes par seconde) pour les configurations d'instances Spanner :
Type de configuration de l'instance | Pic de lectures (RPS par région) | Pic d'écritures (RPS total) | Pic d'écritures avec des écritures à débit optimisé (RPS total) | ||
---|---|---|---|---|---|
Régional | 22 500 | ou | 3 500 | 22 500 | |
Birégional et multirégional | 15 000 | ou | 2 700 | 15 000 |
Pour en savoir plus sur le débit de performances de ces configurations d'instances, consultez la section Performances pour des charges de travail types.
Les conseils de lecture sont fournis par région (car les lectures peuvent être diffusées depuis n'importe quel lecture/écriture ou lecture seule), alors que les conseils d'écriture s'appliquent à l'ensemble configuration. Pour lire les conseils, nous partons du principe que vous lisez des lignes uniques de 1 Ko. Les instructions d'écriture supposent que vous écrivez des lignes uniques à raison de 1 Ko de données par ligne.
Les performances maximales des écritures à débit optimisé sont atteintes de traitement par lot de 100 ms.
En général, les débits de lecture et d'écriture d'une instance Spanner évoluent de manière linéaire lorsque vous ajoutez de la capacité de calcul (nœuds ou unités de traitement) à l'instance. Par exemple, si un serveur Spanner situé dans une seule région comportant deux nœuds peut fournir jusqu'à 45 000 lectures par seconde, puis une instance Spanner à région unique comportant quatre nœuds peut fournir jusqu'à 90 000 lectures par seconde.
Si les performances attendues pour votre charge de travail dans Spanner ne sont pas atteintes, consultez la section Résoudre les régressions de performances pour en savoir plus sur les causes courantes.
Stockage supplémentaire
Pour la plupart des instances Spanner régionales et multirégionales chaque nœud (1 000 unités de traitement) de capacité de calcul dispose d'une capacité de stockage supplémentaire de 10 To. L'espace de stockage supplémentaire est disponible pour toutes les configurations d'instance Spanner, à l'exception des suivantes :
Configuration d'instances régionales |
|
---|---|
Configuration d'instances multirégionales |
|
Performances pour des charges de travail types
Toutes les configurations d'instance Spanner ont amélioré les performances et offrent 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 de pointe suivantes (à 100 % de CPU) dans une configuration d'instance régionale :
Pic de lectures (RPS par région) | Pic d'écritures (RPS total) | Écritures de pointe à l'aide des écritures optimisées pour le débit (RPS total) | ||
---|---|---|---|---|
22 500 | ou | 3 500 | 22 500 |
Pour les configurations d'instances régionales qui autorisent les instances dupliquées en lecture seule facultatives, ces instances peuvent prendre en charge 5 000 lectures supplémentaires par seconde.
Performances pour les configurations birégionales
Chaque nœud de capacité de calcul de 1 000 unités de traitement peut fournir après les pics de performances (à 100% du 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 indiqués dans le tableau.
Nom de la configuration de base | Pic de lectures approximatif (RPS par région) | Pic d'écritures approximatif (RPS total) |
---|---|---|
dual-region-australia1 |
15 000 | 2 700 |
dual-region-germany1 |
15 000 | 2 700 |
dual-region-india1 |
15 000 | 2 700 |
dual-region-japan1 |
15 000 | 2 700 |
Les conseils de lecture sont fournis par région (car les lectures peuvent être diffusées n'importe où), tandis que les conseils d'écriture s'appliquent à l'ensemble de la configuration. Lecture et écriture partent du principe que vous lisez et écrivez des lignes individuelles à 1 Ko de données par ligne.
Performances pour les configurations multirégionales
Chaque configuration d'instance multirégionale Spanner possède en fonction de la topologie de réplication. Utilisez écritures à débit optimisé augmenter le débit en écriture au-delà des chiffres de la table.
Chaque nœud de capacité de calcul de 1 000 unités de traitement peut fournir les performances maximales suivantes (à 100% du processeur):
Nom de la configuration de base | Pic de lectures approximatif (RPS par région) | Pic d'écritures approximatif (RPS total) |
---|---|---|
asia1 |
15 000 | 2 700 |
asia2 |
15 000 | 2 700 |
eur3 |
15 000 | 2 700 |
eur5 |
15 000 | 2 700 |
eur6 |
15 000 7 500 pour chaque instance répliquée facultative en lecture seule |
2 700 |
nam3 |
15 000 7 500 pour chaque instance répliquée facultative en lecture seule |
2 700 |
nam6 |
15 000 en us-central1 et us-east1 7 500 dans us-west1 et us-west2 [1] |
2 700 |
nam7 |
15 000 7 500 pour chaque instance répliquée facultative en lecture seule |
2 700 |
nam8 |
15 000 | 2 700 |
nam9 |
15 000 | 2 700 |
nam10 |
15 000 | 2 700 |
nam11 |
15 000 7 500 pour chaque instance répliquée facultative en lecture seule |
2 700 |
nam12 |
15 000 | 2 700 |
nam13 |
15 000 | 2 700 |
nam14 |
15 000 | 2 700 |
nam15 |
15 000 | 2 700 |
nam16 |
15 000 | 2 700 |
nam-eur-asia1 |
15 000 | 1 500 |
nam-eur-asia3 |
15 000 | 1 500 |
- [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 conseils de lecture sont fournis par région (car les lectures peuvent être diffusées n'importe où), tandis que les conseils d'écriture s'appliquent à l'ensemble de la configuration. Lecture et écriture partent du principe que vous lisez et écrivez des lignes individuelles à 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.
lors de la planification de la capacité, afin de déterminer la meilleure répartition
pour vos applications. PerfKit Benchmarker de Google utilise
YCSB pour comparer 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 dans votre environnement de production :
- Taille totale de votre base de données
- Schéma (par exemple: taille de la clé 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 à l'aide des fichiers yaml
correspondants dans le dossier throughput_benchmark.
Pour comparer les instances dans une configuration d'instance qui a été soumise amélioration des performances, vérifiez que vos tests sont s'exécutant 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 suffisamment de capacité de calcul 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 la valeur maximale recommandée pour le processeur, consultez la section Alertes en cas d'utilisation intensive du processeur.
Étape suivante
- Apprenez à concevoir un schéma Spanner.
- Découvrez comment surveiller les performances de Spanner.
- Apprenez à résoudre les problèmes liés à Key Visualizer.
- Découvrez les tarifs de Spanner.