Tester et optimiser votre schéma et les performances de votre application

L'optimisation des performances est un processus itératif dans lequel vous évaluez des métriques telles que l'utilisation du processeur et la latence, ajustez votre schéma et votre application pour améliorer les performances, puis effectuez un nouveau test.

Par exemple, dans votre schéma, vous pouvez ajouter ou modifier un index, ou modifier une clé primaire. Dans votre application, vous pouvez regrouper les écritures par lots, ou fusionner ou modifier vos requêtes.

Pour le trafic de production en particulier, le réglage des performances est important pour éviter les surprises. L'ajustement des performances est d'autant plus efficace que la configuration est proche du débit et de la taille des données du trafic de production en direct.

Pour tester et ajuster les performances de votre schéma et de votre application, procédez comme suit :

  1. Importer un sous-ensemble de vos données dans une base de données Spanner Vous pouvez utiliser le workflow ETL inversé BigQuery pour charger les exemples de données. Pour en savoir plus, consultez Charger des exemples de données.
  2. Faites pointer l'application vers Spanner.
  3. Vérifiez la cohérence de la base de données en recherchant les flux de base.
  4. Vérifiez que les performances répondent à vos attentes en effectuant des tests de charge sur votre application. Pour obtenir de l'aide afin d'identifier et d'optimiser vos requêtes les plus coûteuses, consultez Détecter les problèmes de performances des requêtes avec Query Insights. Les facteurs suivants peuvent notamment contribuer à des performances de requête non optimales :
    1. Requêtes inefficaces : pour savoir comment écrire des requêtes SQL efficaces, consultez les bonnes pratiques SQL.
    2. Utilisation élevée du processeur : pour en savoir plus, consultez Enquêter sur une utilisation élevée du processeur.
    3. Verrouillage : pour réduire les goulots d'étranglement causés par le verrouillage des transactions, consultez Identifier les transactions susceptibles d'entraîner des latences élevées.
    4. Conception de schéma inefficace : si le schéma n'est pas bien conçu, l'optimisation des requêtes n'est pas très utile. Pour en savoir plus sur la conception de bons schémas, consultez Bonnes pratiques liées à la conception de schémas.
    5. Points chauds : les points chauds dans Spanner limitent le débit d'écriture, en particulier pour les applications à RPS élevé. Pour identifier les points chauds ou les problèmes de conception de schéma, consultez les statistiques de Key Visualizer dans la console Google Cloud . Pour en savoir plus sur la façon d'éviter les hotspots, consultez Choisir une clé primaire en évitant de créer des hotspots.
  5. Si vous modifiez le schéma ou les index, répétez les tests de cohérence et de performances de la base de données jusqu'à obtenir des résultats satisfaisants.

Pour en savoir plus sur l'optimisation des performances de votre base de données, contactez l'assistance Spanner.