martes, 5 de mayo de 2009

Como medir tiempos de ejecución de un script sql

Muchas veces suele ocurrir el siguiente escenario: tenemos un script o una consulta en Sql y queremos saber cuanto tarda, especialmente si queremos compararlo con otro que hace algo similar. Pero ¿como podemos medir el tiempo de ejecución?

Yo suelo utilizar un método sencillo que hasta el momento me ha dato buen resultado. Consiste en utilizar la función getdate() antes y después de ejecutar el script, y realizando una sencilla resta tendremos el tiempo de ejecución. Un ejemplo:

DBCC DROPCLEANBUFFERS
DBCC FREEPROCCACHE
go

select getdate()
aqui ponemos nuestro código sql
select getdate()

Al comienzo del script se llama a dos comandos DBCC que lo que nos hace es eliminar todos los datos de buffers y caches que tengamos para que no se puedan falsear los tiempos de las consultas. Por último, deciros que normalmente yo ejecuto varias veces las consultas y suelo sacar tiempos medios.

No hay comentarios: