SQL Server Profiler вызывает скачок ЦП

Может ли профиль SQL вызвать проблемы для SQL Server?

Мы заметили проблему с одним из ЦП, загруженных на полную мощность, и решили отключить профилировщик SQL, и всплеск исчез!

Кто-нибудь испытал такое и как это происходит?

Как можно использовать профилировщик SQL, если он вызывает эту проблему?


person Abs    schedule 04.06.2013    source источник
comment
Это зависит от того, что вы отслеживали - использование профилировщика SQL всегда будет иметь хотя бы некоторое влияние, серьезность воздействия, вероятно, будет зависеть от используемых настроек трассировки.   -  person Justin    schedule 04.06.2013


Ответы (1)


SQL Profiler в некоторой степени повлияет на производительность, поскольку он фактически подписывается на события и транзакции, обрабатываемые механизмом SQL. Профилировщик будет выполнять трассировку и фильтрацию событий для получения выходных данных, требующих использования ЦП, в какой степени это зависит от нагрузки на сервер и конфигурации.

Вот статья, которую я нашел, дает несколько советов: http://weblogs.sqlteam.com/dang/archive/2007/12/16/Avoid-Causing-Problems-with-Profiler.aspx

Сводные моменты - рекомендации по производительности SQL Trace:

  • Запустите Profiler удаленно, а не непосредственно на сервере
  • Избегайте включения событий, которые происходят часто (например, Lock: Acquired), за исключением случаев крайней необходимости.
  • Включите только необходимые классы событий
  • Укажите ограничивающие фильтры, чтобы уменьшить количество событий
  • Избегайте избыточных данных (например, SQL: BatchStarting и SQL: BatchCompleted)
  • Избегайте запуска больших трассировок с помощью Profiler; рассмотреть серверный SQL
  • Вместо трассировки Ограничьте размер файла трассировки на стороне сервера и управляйте использованием пространства
person Tanner    schedule 04.06.2013