Patrones de mapa de calor

En esta página, se muestran ejemplos de patrones que podrías ver en un mapa de calor de Key Visualizer. Estos patrones pueden ayudarte a solucionar problemas de rendimiento específicos.

Algunos problemas que se exponen en Key Visualizer se relacionan con la definición de tu clave primaria. Debido a que una clave primaria es inmutable, es mejor descubrir estos problemas durante la etapa de diseño o de prueba de concepto.

Otros problemas pueden estar relacionados con la asignación de nodos de tu instancia. Es posible que debas aprovisionar capacidad adicional, ya sea en general o en ciertos momentos del día. Para cambiar la cantidad de nodos asociados con tu instancia, consulta Cómo cambiar la cantidad de nodos.

Antes de leer esta página, debes familiarizarte con la descripción general de Key Visualizer.

Lecturas y escrituras distribuidas de manera uniforme

Ejemplo de mapa de calor que muestra áreas de calor y frío distribuidas de manera uniforme

Si en un mapa de calor se muestra una mezcla detallada de colores oscuros y brillantes, significa que las lecturas y escrituras están distribuidas de manera uniforme en la base de datos. Este mapa de calor representa un patrón de uso efectivo de Spanner, de manera que no es necesario modificar nada.

Es posible que tu propio mapa de calor no esté distribuido de manera tan uniforme como este, pero aún así ilustre un esquema y una carga de trabajo saludables. Se puede esperar una cierta cantidad de hotspots en una configuración con recursos adecuados.

Claves que aumentan de forma monótona

Ejemplo de mapa de calor que muestra una banda activa diagonal (que desciende de izquierda a derecha)

Un mapa de calor con una sola línea diagonal brillante o un triángulo con una parte superior plana puede indicar una base de datos que usa claves secuenciales. Las claves secuenciales son un antipatrón en Spanner. Consulta la página Prácticas recomendadas de diseño de esquemas para saber por qué las claves secuenciales causan hotspots.

Rangos de teclas activos de forma persistente

Ejemplo de mapa de calor en el que se muestran varias bandas horizontales activas

Si un mapa de calor muestra bandas horizontales de un color brillante, separadas por colores oscuros, significa que se accede de forma más constante a rangos de filas específicos con el tiempo.

Para abordar este problema, considera cambiar el diseño de tu esquema o tu aplicación para que los datos de una fila activa, o de una fila demasiado grande, se dividan en varias de estas.

Tabla activa única

Ejemplo de mapa de calor que muestra una sola banda horizontal activa

Si en un mapa de calor se muestra una banda de color brillante en una sola tabla, significa que se accede mucho a esa tabla con el tiempo.

Este patrón por sí solo no es necesariamente problemático. Si ves este patrón junto con problemas de rendimiento, es probable que se te esté agotando la capacidad de procesamiento. Ten en cuenta lo siguiente:

  • Es posible que tu aplicación solicite un análisis completo de la tabla, que se mostrará en el Visualizador de claves como una banda brillante de toda la tabla. En su lugar, considera una consulta más restrictiva o consulta el índice para reducir la cantidad de filas que se analizan.

  • Aumenta la cantidad de nodos para esta instancia.

Lecturas y escrituras itinerantes a lo largo del tiempo

Ejemplo de mapa de calor que muestra bandas diagonales (que aumentan de izquierda a derecha)

Un mapa de calor que muestra varias líneas diagonales (ascendentes o caídas) suele indicar lecturas o escrituras secuenciales en filas en un período corto.

Si las líneas corresponden a la actividad de lectura, como una exportación de tabla, no se requiere ninguna acción. Si tienes problemas de rendimiento durante estas operaciones de lectura, considera aumentar la cantidad de nodos de tu instancia durante estos períodos. Puedes disminuir la cantidad de nodos entre períodos.

Si las líneas corresponden a la actividad de escritura y tienes problemas de rendimiento, deberías considerar cambiar tu carga de trabajo a una escritura aleatoria en lugar de una escritura secuencial.

Aumento repentino del tráfico

Ejemplo de mapa de calor en el que se muestran dos bandas horizontales activas que comienzan a la mitad del mapa de calor

Un mapa de calor que muestra bandas horizontales brillantes que aparecen en medio del mapa de calor indica un cambio repentino en el patrón de uso de una base de datos. Puede ser una consulta no autorizada o un aumento inesperado de la actividad en ciertas filas.

Advertencias

Hay algunas situaciones en las que Key Visualizer puede no presentar un panorama completo del rendimiento y el uso de recursos.

Situación Qué muestra el mapa de calor
Una tabla de datos grande y algunas tablas pequeñas Key Visualizer selecciona más rangos de filas en tablas grandes que en tablas más pequeñas. Como resultado, una tabla pequeña solo puede aparecer como un rango de una sola fila en el mapa de calor. Habrá un rango de filas que represente cada tabla, siempre y cuando la cantidad de tablas sea inferior a 1,000. Cuando una clave o un pequeño rango de claves están activos en una tabla pequeña, es posible que el usuario solo sepa que esta tabla está activa, pero no más.
Muchas tablas o índices
Por ejemplo, una base de datos con cientos o más de mil tablas, independientemente del tamaño.
Key Visualizer selecciona, como máximo, 1,000 rangos de filas. Cuando hay muchas tablas y índices, es posible que algunos de ellos solo tengan cero o un dato en el mapa de calor. Por lo tanto, es posible que falten hotspots debido a que se omitió o se redujo la muestra de su tabla.
Cambio rápido de teclas Los cambios rápidos en el espacio de claves provocarán cambios frecuentes en los rangos de filas. Cuando se debe dividir un rango de filas anterior debido a claves insertadas recientemente o se combinan varios rangos de filas debido a claves borradas, las métricas se aproximan (p.ej., se dividen o combinan). Es probable que la aproximación compuesta de los valores de las métricas los haga menos precisos. Además, hay un retraso en la actualización de los rangos de filas después de los cambios en el espacio de claves, lo que puede provocar una pérdida de nivel de detalle hasta que se actualicen los rangos de filas.

¿Qué sigue?