Posts

Showing posts from October, 2021

Demostración de SQL Server Query Store

A continuación les comparto el script de TSQL utilizado durante la demostración de SQL Server Query Store. -- Creamos la base de datos CREATE   DATABASE   db_ejemplo_querystore   ON   PRIMARY   (   NAME   = N'db_ejemplo_querystore' ,   filename   =   N'C:\DATOS_SQL\db_ejemplo_querystore.mdf' , size   =   102400 kb ,   maxsize   =   1024000 kb ,   filegrowth   =   20480 kb   )   log   ON   (   NAME   = N'db_ejemplo_querystore_log' ,   filename   = N'C:\DATOS_SQL\db_ejemplo_querystore_log.ldf' ,   size   =   20480 kb ,   maxsize   =   1024000 kb ,   filegrowth   =   20480 kb   ) go ALTER   DATABASE   db_ejemplo_querystore SET   auto_update_statistics   OFF go ALTER   DATABASE   db_ejemplo_querystore SET   auto_create_statistics   OFF go ALTER   DATABASE   db_ejemplo_querystore SET   recovery   simple go ALTER   DATABASE   db_ejemplo_querystore SET   query_store   =   OFF go USE   db_ejemplo_querystore go   -- crear una tabla de ejemplo CREATE   TABLE   dbo

Cómo identificar consultas más pesadas en SQL Server

Muchas veces nos encontramos en situaciones en las cuales tenemos un servidor SQL Server, y los usuarios reportan que el sistema está lento, por lo tanto, es crucial que podamos identificar cuál es la causa.  El primer paso puede ser identificar cuáles son las consultas TSQL que están consumiendo más recursos en el servidor, para poder identificarlas podemos recurir al siguiente script, el cual nos devuelve las consultas ordenadas por tiempo de ejecución, a partir de esta consulta podemos identicar el TSQL que consume más recursos e iniciar nuestras tareas de mejoras de desempeño. -- Consultas que afectan el desempeño SELECT TOP 10 SUBSTRING ( qt . TEXT , ( qs . statement_start_offset / 2 ) + 1 , ( ( CASE qs . statement_end_offset WHEN - 1 THEN DATALENGTH ( qt . TEXT ) ELSE qs . statement_end_offset END - qs . statement_start_offset ) / 2 ) + 1 ) AS consulta_TSQL , db . name AS [nombre_base_datos] , qs . total_elap