En SQL Server, ¿qué mide el contador Perfmon "Estadísticas de grupo de carga de trabajo: planes subóptimos / seg"?
Es uno de los contadores del regulador de recursos , por lo que se mide en el grupo de carga de trabajo (que tiene si configura RG o no).
No estoy preguntando qué hace que un plan sea bueno o malo, pero ¿qué mide específicamente ese contador y dónde vas a encontrar los planes exactos correspondientes? Por ejemplo, no puedo encontrar nada en Eventos extendidos que parezca coincidir con una consulta que active el contador "Planes subóptimos / seg".
sql-server
Brent Ozar
fuente
fuente
StatementOptmEarlyAbortReason="TimeOut"
difícil decirlo con certeza! Sin embargo, eso no se correlaciona bien con el contador de perfmon.Respuestas:
Hay dos elementos que este contador rastrea:
Los valores se pueden encontrar en el plan XML como Max ha propuesto en los comentarios. Puedo confirmar que ha sido así desde al menos SQL Server 2008.
Felicitaciones a @Max Vernon y @Joe Obbish.
La descripción de
MSDN BOL TechnetDocs no es muy útil.fuente
sys.dm_os_performance_counters
y buscando en el caché del plan los elementos de tiempo de espera, y vi que el DMV no se incrementa mientrassys.dm_exec_query_stats
muestra consultas de tiempo de espera agotadas recientemente. Tal vez armaré un MCVE mañana para explorar eso. Además, cabe destacar que eso está sucediendo en una de nuestras instancias de producción EDW que ejecutan 2012 Enterprise.