L'observabilité des bases de données est une mesure de la précision avec laquelle vous pouvez déduire l'état interne d'un système de base de données en fonction des données ou de la télémétrie qu'il génère dans les journaux, les métriques et les traces.
Le diagnostic et le dépannage des problèmes d'une application peuvent s'avérer particulièrement difficiles et chronophages lorsqu'une base de données est impliquée. La collecte de télémétrie est d'une importance cruciale. La télémétrie, lorsqu'elle s'accompagne du contexte de l'application, peut rendre les instances de base de données plus compréhensibles, observables et faciles à gérer. Vous pouvez facilement identifier les incidents et les tendances problématiques et les résoudre rapidement, tout en limitant les temps d'arrêt coûteux. De plus, l'utilisation de ces données vous permet de configurer des instances de base de données plus récentes afin de collecter le type de données approprié au moment du démarrage.
Vous pouvez ainsi utiliser les données de manière efficace et proactive pour éviter les problèmes et vous concentrer sur l'innovation stratégique. Une collecte de télémétrie bien menée est particulièrement utile dans le modèle DevOps, où les généralistes de base de données doivent analyser indépendamment la télémétrie pour surveiller, évaluer et optimiser les performances et l'état de leurs applications en constante évolution.
Google Cloud offre plusieurs fonctionnalités puissantes couvrant les quatre étapes d'observabilité itératives pour vous aider à maintenir l'état de votre base de données Cloud SQL.
Collecte automatisée de télémétrie
Pour atteindre des objectifs d'observabilité, nous commençons par collecter les données de télémétrie, de préférence via un processus automatisé. Lorsqu'elle est effectuée sur une période, la collecte de télémétrie permet d'établir une référence pour les métriques dans différentes conditions de charge.
Les services Google Cloud génèrent automatiquement des données d'observabilité, y compris des métriques, des journaux et des traces, ce qui peut vous fournir une présentation complète de l'observabilité.
Cloud Monitoring collecte des mesures de votre service et des ressources Google Cloud que vous utilisez. Cloud SQL utilise des agents personnalisés à mémoire intégrée pour collecter la télémétrie des requêtes, ce qui réduit l'impact sur les performances et élimine le besoin de maintenance des agents ou les coûts liés à la sécurité.
Cloud Logging collecte les données de journalisation à partir des composants d'application courants. Pour Cloud SQL, consultez également la section Afficher les journaux d'instance.
Cloud Trace collecte les données de latence et les plans de requête exécutés à partir d'applications pour vous aider à suivre la propagation des requêtes dans votre application. Vous pouvez comparer ces distributions de latence dans le temps ou entre les versions. Cloud Trace vous alerte lorsqu'il détecte un changement significatif dans le profil de latence de votre application, s'il est instrumenté pour utiliser Cloud Trace.
Sqlcommenter, une bibliothèque OpenTelemetry pour les bases de données, vous permet de surveiller vos bases de données sous l'angle d'une application. Sqlcommenter instrumente automatiquement les ORM pour augmenter les instructions SQL à l'aide de tags et permet de propager les informations de contexte de trace OpenTelemetry dans la base de données.
Avec les tags et le contexte de l'application dans les bases de données, il est facile de mettre en corrélation le code de l'application avec les performances de la base de données et de résoudre les problèmes liés aux architectures basées sur des microservices.
Surveillance des bases de données
Une surveillance appropriée vous aide à déterminer si votre application fonctionne de manière optimale. Implémentez la surveillance de manière anticipée, par exemple avant de lancer une migration ou avant de déployer une nouvelle application dans un environnement de production. Faites la distinction entre les problèmes d'application et les problèmes liés au cloud sous-jacents.
La page de présentation de Cloud SQL affiche des graphiques pour certaines métriques clés.
Cloud SQL vous aide également à comparer les métriques pour les instances sélectionnées.
Cloud Monitoring vous permet de créer des tableaux de bord personnalisés qui vous aident à surveiller les métriques et à configurer des règles d'alerte afin de recevoir des notifications en temps opportun.
Réglage de la base de données
Vous pouvez effectuer un dépannage et un réglage itératif de votre base de données.
Les outils de recommandation Cloud SQL vous aident à analyser l'utilisation actuelle de votre base de données et fournissent des recommandations et des insights basés sur des méthodes heuristiques et le machine learning.
Les outils de recommandation Cloud SQL sont brièvement décrits comme suit :
Nom | Description |
---|---|
Outil de recommandation pour manque d'espace disque | Réduisez le risque d'indisponibilité imputable à des instances Cloud SQL manquant d'espace disque. |
Outil de recommandation pour instances inactives | Réduisez les coûts en arrêtant les instances Cloud SQL inactives non intentionnellement. |
Outil de recommandation pour instances surprovisionnées | Réduisez les coûts en redimensionnant les instances Cloud SQL inutilement volumineuses pour une charge de travail donnée. |
Outil de recommandation pour instances sous-provisionnées | Évitez les goulots d'étranglement liés à une utilisation intensive du processeur et de la mémoire, et réduisez la probabilité d'événements de mémoire insuffisante en redimensionnant les instances Cloud SQL qui utilisent beaucoup de processeurs et/ou de mémoire. |
Étapes suivantes
- Consultez la liste des métriques Cloud SQL.
- Apprenez-en plus sur Cloud Logging et Cloud Monitoring. Consultez également la section Afficher les journaux d'instances.
- Dépannez et réglez votre instance de base de données.
- Apprenez-en plus sur les outils de recommandation Google Cloud.