Подтвердить что ты не робот

Большинство выполняемых хранимых процедур?

Мы создали так много неэффективной хранимой процедуры в нашем приложении, мы всегда откладываем ее, чтобы сделать ее более эффективной, пока у нас не возникнет серьезная проблема с производительностью базы данных.

Теперь я собираюсь исправить его по одному порядку с помощью наиболее часто исполняемой хранимой процедуры.

Каков наилучший способ выяснить, какая хранимая процедура наиболее выполнена?

Есть ли script, который может показать, какая хранимая процедура наиболее выполнена?

4b9b3361

Ответ 1

Использование:

SELECT TOP 10 
       qt.TEXT AS 'SP Name',
       SUBSTRING(qt.text, qs.statement_start_offset/2, CASE WHEN (qs.statement_end_offset = -1) THEN LEN(qt.text) ELSE (qs.statement_end_offset - qs.statement_start_offset)/2 END) AS actual_query,
       qs.execution_count AS 'Execution Count',
       qs.total_worker_time/qs.execution_count AS 'AvgWorkerTime',
       qs.total_worker_time AS 'TotalWorkerTime',
       qs.total_physical_reads AS 'PhysicalReads',
       qs.creation_time 'CreationTime',
       qs.execution_count/DATEDIFF(Second, qs.creation_time, GETDATE()) AS 'Calls/Second'
  FROM sys.dm_exec_query_stats AS qs
  CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt
 WHERE qt.dbid = (SELECT dbid
                    FROM sys.sysdatabases
                   WHERE name = '[your database name]')
ORDER BY qs.total_physical_reads DESC

Ссылка: SQL SERVER - 2005 - Найти самую высокую/наиболее часто используемую хранимую процедуру

Ответ 2

Быстрый способ выполнить это - запустить SQL Profiler, а затем "группировать" вашу трассировку с помощью TextData.

  • Перейдите в свои свойства трассировки
  • На вкладке "Выбор событий" нажмите об упорядочении столбцов...
  • Нажмите на TextData и переместите его на область "Группы".

Вам также может потребоваться только просмотр определенных событий, таких как SQL Batch Completed. Если я помню, это даст вам длительность и другую удобную статистику для группировки/фильтрации.

Ответ 3

Еще один фантастический инструмент - панель показателей производительности Microsoft. текст ссылки

Ответ 4

Типичная ситуация.

Запустите анализатор производительности А затем запустите приложение установить некоторые фильтры для захвата большого количества операций чтения/записи/сканирования и т.д.