Les outils d'introspection de Spanner vous permettent d'examiner les problèmes liés à votre base de données. Ils se composent d'un ensemble de tables intégrées que vous pouvez interroger afin d'obtenir plus d'informations sur les requêtes, transactions, lectures, etc. Vous ne savez pas quel outil utiliser pour un problème particulier ? La liste suivante résume chaque outil et le type de questions auxquelles ils peuvent répondre.
Statistiques des requêtes
Lorsque vous examinez des problèmes dans votre base de données, il est utile de savoir quelles requêtes sont coûteuses, exécutées fréquemment ou qui analysent de nombreuses données.
Les statistiques sur les requêtes sont des statistiques agrégées pour les requêtes (y compris les instructions LMD et le flux de modifications) requêtes), collectées à intervalles de 1, 10 et 60 minutes. Les statistiques sont collectées pour les instructions qui ont abouti ainsi que celles qui ont échoué, chronométrées ou ont été annulées par l'utilisateur.
Ces statistiques comprennent l'utilisation la plus élevée du processeur, le nombre total d'exécutions de requêtes, la latence moyenne, la plupart des données analysées et d'autres statistiques de requête de base. Utilisez ces statistiques afin d'identifier les requêtes coûteuses, fréquemment exécutées ou qui analysent de nombreuses données.
Vous pouvez visualiser ces métriques sur une série temporelle à l'aide des tableaux de bord Insights sur les requêtes. Ces tableaux de bord prédéfinis vous permettent de consulter les pics d'utilisation du processeur et d'identifier les requêtes inefficaces.
Requêtes actives les plus anciennes
Vous pouvez parfois avoir besoin d'afficher la charge de travail actuelle du système en examinant les requêtes en cours d'exécution. Utilisez l'outil Requêtes actives les plus anciennes pour examiner les requêtes de longue durée susceptibles d'avoir un impact sur les performances de la base de données. Cet outil vous indique ce que sont les requêtes, à quel moment elles ont commencé à s'exécuter et à quelle session elles appartiennent.
Les requêtes de flux de modifications ne sont pas incluses dans les requêtes actives les plus anciennes.
Lire les statistiques
Les statistiques de lecture, qui permettent d'identifier les problèmes et les lectures gourmandes en ressources de votre base de données à l'aide du service API Reads : Ces statistiques sont collectées et stockées dans trois intervalles de temps différents : une minute, 10 minutes et une heure. Pour chaque intervalle de temps, Spanner suit les lectures qui utilisent le plus de ressources.
Utilisez les statistiques de lecture pour connaître l'utilisation combinée des ressources par toutes les lectures, identifier les lectures consommant le plus de processeurs et découvrir comment la fréquence d'une lecture spécifique évolue au fil du temps.
Statistiques de transaction
Les statistiques de transaction peuvent servir à examiner les problèmes liés aux transactions. Par exemple, vous pouvez rechercher des transactions lentes qui peuvent causer un conflit ou identifier des modifications dans les formes de transaction qui entraînent des régressions de performances. Chaque ligne contient les statistiques de toutes les transactions exécutées sur la base de données selon des intervalles de 1, 10 et 60 minutes.
Vous pouvez visualiser ces métriques sur une série temporelle à l'aide du tableau de bord Insights sur les transactions. Le tableau de bord prédéfini vous permet de visualiser les latences des transactions et d'identifier les transactions problématiques.
Verrouiller les statistiques
Les statistiques de verrou peuvent être utilisées pour examiner les conflits de verrouillage dans votre base de données. Utilisé avec les statistiques de transactions, vous pouvez identifier les transactions qui entraînent des conflits de verrous en essayant d'acquérir des verrous sur les mêmes cellules en même temps.
Vous pouvez visualiser ces métriques sur une série temporelle à l'aide du tableau de bord Insights sur les verrouillages. Le tableau de bord prédéfini vous permet d'afficher le temps d'attente du verrouillage et de vérifier si les latences sont dues à des conflits de verrouillage avec un temps d'attente élevé.
Méthodes d'API incluses dans chaque outil
Dans Spanner, il existe un chevauchement entre les transactions, les lectures et les requêtes. Par conséquent, il peut être difficile de déterminer les méthodes d'API incluses lors de la compilation des résultats pour chaque outil d'introspection. Le tableau suivant répertorie les principales méthodes de l'API et leur relation à chaque outil.
Méthodes d'API | Modes de transaction | Statistiques des requêtes | Requêtes actives les plus anciennes | Lire les statistiques | Statistiques de transaction | Statistiques de verrouillage |
---|---|---|---|---|---|---|
Lecture, StreamingRead | Transaction en lecture seule1 | Non | Non | Oui | Non | Non |
Transaction en lecture-écriture | Non | Non | Oui | Oui | Oui | |
ExecuteSql et ExecuteStreamingSql | Transaction en lecture seule1 | Oui2 | Oui2 | Non | Non | Non |
Transaction en lecture-écriture | Oui | Oui | Non | Oui | Oui | |
ExecuteBatchDml | Transactions en lecture-écriture | Oui3 | Oui4 | Non | Oui | Oui |
Commit | Transactions en lecture/écriture (LMD5, mutations6) | Non | Non | Non | Oui | Oui |
Notes :
1 Les transactions en lecture seule ne sont pas incluses dans les statistiques de transaction ni dans les statistiques de verrouillage. Seules les transactions en lecture-écriture sont incluses dans les statistiques de transaction et les statistiques de verrouillage.
2 Les requêtes exécutées avec l'API PartitionQuery ne sont pas incluses dans les statistiques de requête ni dans les requêtes actives les plus anciennes.
3 Un lot d'instructions LMD apparaît dans les statistiques sur les requêtes sous la forme une entrée unique.
4 Les instructions du lot apparaîtront dans les requêtes actives les plus anciennes. et non l'intégralité du lot.
5 Les opérations LMD non validées ne sont pas incluses dans la transaction. statistiques.
6 Les mutations vides qui sont effectivement no-op ne sont pas incluses dans les statistiques sur les transactions.
Statistiques sur les tailles de tables
Vous pouvez utiliser les statistiques sur les tailles de table pour surveiller la les tailles historiques des tables et des index de votre base de données.
Utilisez les statistiques sur la taille des tables pour identifier les tendances et modifier les tables des flux. Vous pouvez aussi garder une trace de vos plus de tables et d'index.
Veuillez noter que cette fonctionnalité n'offre qu'une perspective historique. Il n'est pas destiné à la surveillance en temps réel.
Statistiques sur les opérations de table
Les statistiques des opérations Table vous permettent d'effectuer les opérations suivantes : suivantes:
- Surveillez l'utilisation de vos tables et de vos index dans votre base de données.
- Identifiez les tendances dans l'utilisation de vos tables et de vos index.
- Identifiez les changements dans le trafic.
Vous pouvez également mettre en corrélation les modifications apportées au stockage de votre table avec les modifications apportées à votre trafic en écriture.
Déboguer les points chauds dans les fractionnements
Vous pouvez déboguer les points d'accès de votre base de données pour trouver des divisions dans la base de données qui sont chaudes ou très chaudes, ce qui signifie qu'un pourcentage élevé de la charge sur une division est limité par les ressources disponibles. Toi peuvent afficher des statistiques pour les écrans fractionnés ayant les scores d'utilisation de CPU les plus élevés au cours des 6 dernières heures, par intervalles d'une minute.