none
Analizador de Consultas (Execution Count) RRS feed

  • Pregunta

  • Estimados, como estan. Les traigo otra consulta.

    Estoy trabajando con el analizador de consultas en SQL Server 2017, con el objetivo de comprender la demanda sobre ciertas bases de datos y mejorar aspectos de performance.

    Al inspeccionar la vista Top Resource Consuming Queries (consultas que consumen más recursos) con la métrica Execution Count, encuentro estos valores en el Top 10 de la última hora:

    ▼ execution count
    49698
    45971
    33347
    33345
    33345
    23021
    20538
    19024
    16801
    16548

    En la mayoría de los casos se trata de procedimientos almacenados, seguido de triggers y una función.

    ¿Es correcta la lectura que obtengo?

    ¿Puede ser que en una hora se ejecuten alrededor de 45000 veces ciertos procedimientos almacenados?

    martes, 27 de agosto de 2019 15:55

Respuestas

  • ¿Puede ser que en una hora se ejecuten alrededor de 45000 veces ciertos procedimientos almacenados?

    Sí, puede ser perfectamente que así sea, si esa es la carga que aplicas al servidor y son procedimientos razonablemente sencillos. No es demasiado difícil dimensionar un servidor para que permita 20.000 consultas por segundo (sencillas), que equivalen a más de 60 millones por hora. 45.000 es pan comido.
    • Marcado como respuesta Huasi miércoles, 28 de agosto de 2019 11:43
    martes, 27 de agosto de 2019 20:23

Todas las respuestas

  • ¿Puede ser que en una hora se ejecuten alrededor de 45000 veces ciertos procedimientos almacenados?

    Sí, puede ser perfectamente que así sea, si esa es la carga que aplicas al servidor y son procedimientos razonablemente sencillos. No es demasiado difícil dimensionar un servidor para que permita 20.000 consultas por segundo (sencillas), que equivalen a más de 60 millones por hora. 45.000 es pan comido.
    • Marcado como respuesta Huasi miércoles, 28 de agosto de 2019 11:43
    martes, 27 de agosto de 2019 20:23
  • Hola amigo,

    De hecho, debe verificar en el entorno si esta cantidad es normal. ¿Cuáles son los procesos que se ejecutan con tanta frecuencia? Si realmente deberían llamarse tantas veces.
    ¿Puede ser normal decir que son procedimientos de auditoría y que están recopilando datos de todos los usuarios y cientos o docenas? La diferencia de tiempo puede indicar la ejecución máxima debido a la carga de datos.
    Le recomiendo que verifique los procesos y si el tiempo que está verificando los valores son realmente correctos en comparación con la confiabilidad.
    Carga de trabajo / usuarios en conexión y etc.
    Espero haber ayudado.


    Jefferson Clyton Pereira da Silva - [MCSA | MCP | MCTS | MTA | Analista de Banco de Dados - Sql Server e Oracle ]

    jueves, 29 de agosto de 2019 15:56
  • Estimados, gracias por su buena disponibilidad.

    El objetivo es mejorar la performance y conocer la actividad del negocio a través de la demanda.

    Como dices, muchas ejecuciones se deben a procesos de auditoría que se disparan a traves de triggers.

    El resto proviene del sistema transaccional, sistemas externos, jobs, interfaces, etc.

    En este momento me encuentro trabajando sobre la generación de reportes personalizados para complementar las vistas por defecto que me ofrece la query store.

    Gracias por sus respuestas.

    Saludos

    viernes, 30 de agosto de 2019 14:10