Descripción general de las herramientas de introspección

Las herramientas de introspección para Cloud Spanner te permiten investigar los problemas de tu base de datos. Consisten en un conjunto de tablas integradas que puedes consultar para obtener más estadísticas sobre las consultas, las transacciones, las lecturas y mucho más. ¿No sabes qué herramienta usar para un problema en particular? En la siguiente lista, se resume cada herramienta y los tipos de preguntas que pueden ayudar a responder.

Estadísticas de consulta

Cuando investigas problemas en la base de datos, es útil saber qué consultas son costosas, se ejecutan con frecuencia o analizan muchos datos.

Las estadísticas de consultas son estadísticas agregadas de las consultas (incluido el DML) que se recopilan en intervalos de 1, 10 y 60 minutos. Las estadísticas se recopilan para las declaraciones que se completaron correctamente, así como las que fallaron, el tiempo de espera del tiempo de espera o las que el usuario canceló.

Las estadísticas incluyen el mayor uso de CPU, el recuento total de ejecuciones de consultas, la latencia promedio, la mayoría de los datos analizados y estadísticas adicionales de consultas básicas. Usa estas estadísticas para ayudar a identificar las búsquedas costosas, que se ejecutan con frecuencia o los datos requieren mucho uso.

Consultas activas más antiguas

A veces, para examinar la carga de trabajo actual del sistema, debes examinar las consultas en ejecución. Usa la herramienta Consultas activas más antiguas para investigar las consultas de larga duración que pueden afectar el rendimiento de la base de datos. Esta herramienta te indica cuáles son las consultas, cuándo comenzaron a ejecutarse y a qué sesión pertenecen.

Lee estadísticas

Las estadísticas de lectura se pueden usar para investigar las lecturas más comunes y de mayor consumo de recursos de tu base de datos mediante la API de Read de Cloud Spanner. Estas estadísticas se recopilan y almacenan en 3 intervalos de tiempo diferentes: minuto, 10 minutos y una hora. En cada intervalo de tiempo, Cloud Spanner realiza un seguimiento de las lecturas que usan más recursos.

Usa las estadísticas de lectura para conocer el uso combinado de los recursos por parte de todas las lecturas, encontrar las lecturas que usan una gran cantidad de CPU y averiguar cómo cambia la frecuencia específica de una lectura con el tiempo.

Estadísticas de transacciones

Las estadísticas de transacciones se pueden usar para investigar problemas relacionados con transacciones. Por ejemplo, puedes verificar si hay transacciones de ejecución lenta que podrían estar causando conflictos o identificar cambios en las formas de transacción que conducen a regresiones de rendimiento. Cada fila contiene estadísticas de todas las transacciones que se ejecutaron en la base de datos durante intervalos de 1, 10 y 60 minutos.

Estadísticas de bloqueo

Las estadísticas de bloqueo se pueden usar para investigar conflictos de bloqueo en la base de datos. Con las estadísticas de transacciones, puedes encontrar transacciones que causan conflictos de bloqueo si intentas adquirir bloqueos en las mismas celdas al mismo tiempo.

Métodos de la API incluidos en cada herramienta

En Cloud Spanner, existe cierta superposición entre las transacciones, las lecturas y las consultas. Por lo tanto, es posible que no esté claro qué métodos de la API se incluyen cuando se compilan resultados para cada herramienta de introspección. En la siguiente tabla, se enumeran los métodos de la API principales y su relación con cada herramienta.

Métodos de la API Modos de transacción Estadísticas de consulta Consultas activas más antiguas Lee estadísticas Estadísticas de transacciones Estadísticas de bloqueo
Lectura, StreamingRead Transacción de solo lectura1 No No Yes No No
Transacción de lectura o escritura No No
ExecuteSql, ExecuteStreamingSql Transacción de solo lectura1 2 2 No No No
Transacción de lectura o escritura Yes No
executeBatchDml Transacciones de lectura y escritura 3 4 No
Confirmación Transacciones de lectura y escritura (DML5, mutaciones6) No No No

Notas:

1 Las transacciones de solo lectura no se incluyen en las estadísticas de transacciones ni de bloqueo. Solo las transacciones de lectura y escritura se incluyen en las estadísticas de transacciones y de bloqueo.

2 Las consultas que se ejecutan con la API de PartitionQuery no se incluyen en las estadísticas de consultas ni en las consultas activas más antiguas.

3 Un lote de declaraciones DML aparece en las estadísticas de consulta como una sola entrada.

4 Las declaraciones dentro del lote aparecerán en las consultas activas más antiguas, en lugar de todo el lote.

5 Las operaciones DML no confirmadas no se incluyen en las estadísticas de transacciones.

6 Las mutaciones vacías que son no-op de forma efectiva no se incluyen en las estadísticas de transacción.