¿Cómo averiguar cuánto recursos de E / S se está utilizando una tarea, sesión, solicitud o transacción?

dba.stackexchange https://dba.stackexchange.com/questions/116878

Pregunta

¿Cómo descubrir cuánto recursos de I / O se usa una tarea, sesión, solicitud o transacción?

Por tarea Me refiero a la DMV llamada DMV sys.dm_os_tasks . Por sesión me refiero a la DMV SYS.DM_EXEC_ESESSIONSIONS

A veces, una sesión tiene una solicitud, por solicitud, me refiero a la DMV SYS.DM_EXEC_REQUESTS O una sesión puede tener una transacción en su lugar, Sys. dm_tran_database_transacciones

¿Cómo puedo vincular estas cosas con uso de E / S ?

Eché un vistazo a la DMV llamada Dmv sys.dm_os_tasks .

The dmv sys.dm_os_tasks Tiene algunas columnas interesantes para obtener más información sobre los procesos que se ejecutan actualmente en SQL Server.

sys.dm_os_tasks - no muestra pendientes_io_byte_count

Sin embargo, cuando intento identificar la cantidad de I / O, cada una de mis tareas está tratando con la E / S pendiente en bytes, siempre es cero.

 ingrese la descripción de la imagen aquí

Este es un ejemplo de los resultados de mi consulta mientras intentaba monitorear algunas esperas de CXPACKETS.

Pendiente_io_Count parece estar bien, pero Pending_io_By_Counts siempre son cero.

¿Qué podría ser una alternativa? Quiero medir el uso de E / S de cada proceso paralelo.

De hecho, podría ser solo el uso de E / S de cada sesión o solicitud.

Incluso las sesiones sin solicitud a veces son buenas para ver, porque podrían estar bloqueando otros procesos.

 ingrese la descripción de la imagen aquí

¿Fue útil?

Solución

Si está buscando la E / S física real para una consulta, debe buscar en el ShowPlan XML para el elemento 'ActualPhysicalReads':

schemas.microsoft.com/sqlserver/2004/07/showplan

Sin embargo, es probable que esas lecturas físicas solo ocurran la primera vez que se almacena en caché.Las ejecuciones posteriores tienen más probabilidades de tirar de las páginas de la memoria, no desde el disco.

hth

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top