Что именно измеряет длительность запроса при проведении трассировки профилировщика?
У меня есть хранимая процедура, которая выполняет доступ к данным (SELECT), и для возврата результатов в приложение требуется в среднем около 30 секунд. Но когда я запускаю трассировку, я получаю среднюю продолжительность около 8 секунд, максимальную продолжительность 12 секунд, средний процессор 5,5 секунд.
Что может заставить так долго возвращать набор результатов? Я не накапливаю большие ожидания NETWORKIO. Результирующий набор составляет всего около 270 строк простых текстовых данных, всего около 50 столбцов.
sql-server
query-performance
sqlbattsman
источник
источник
Ответы:
Длительность представляет собой общее время от начала до конца запроса SQL Server, которое представляет время для отправки по сети, время процессора, время ожидания и выполнения. Как отметил Аарон, как только клиент получил данные, SQL Server завершил свою синхронизацию, и клиент затем обрабатывает. Это не должно быть частью продолжительности.
источник