В SQL Server что измеряет счетчик Perfmon «Статистика рабочей нагрузки группы: субоптимальные планы / сек»?
Это один из счетчиков регулятора ресурсов , поэтому он измеряется в группе рабочей нагрузки (у вас есть, настраиваете ли вы RG или нет).
Я не спрашиваю, что делает хороший план или плохой план, но что конкретно делает эта контрмера, и куда вы идете, чтобы найти точные соответствующие планы? Например, в расширенных событиях я не могу найти ничего, что могло бы соответствовать запросу, запускающему счетчик «Неоптимальные планы / сек».
sql-server
Брент Озар
источник
источник
StatementOptmEarlyAbortReason="TimeOut"
трудно сказать наверняка! Это не очень хорошо коррелирует со счетчиком perfmon.Ответы:
Этот счетчик отслеживает две вещи:
Значения можно найти в плане XML, как Макс предложил в комментариях. Я могу подтвердить, что так было по крайней мере с SQL Server 2008.
Слава @Max Вернону и @Joe Obbish.
Описание
MSDN BOL TechnetDocs не очень полезно.источник
sys.dm_os_performance_counters
и искал кэш плана для элементов Timeout, и увидел, что DMV не увеличивается, покаsys.dm_exec_query_stats
отображаются недавно использованные запросы на тайм-аут. Возможно, я соберу завтра MCVE, чтобы изучить это. Также следует отметить, что это происходит на одном из наших производственных экземпляров EDW под управлением 2012 Enterprise.