Re[3]: Резкий и случайный рост времени выполнения хранимых п
От: vmpire Россия  
Дата: 28.07.09 13:30
Оценка:
Здравствуйте, SergeiSF, Вы писали:

SSF>В процессе данные из одной таблицы(~1000-3000 записей ежедневно) постепенно копируются во вторую и запрос выдает данные из 1й таблицы которые еще не существуют во второй. Там где то 5-7 штук inner / left outer joins. Вроде ничего криминального.

SSF>Тормозить начиниает когда разница между 2мя таблицами становится оочень небольшой – скажем 100-50-10 строк. Это что нить объясняет?
Это, возможно, объясняет всё (а возможно и нет ).
Очень похоже, что при маленьком и большом количестве записей сервер использует разные планы выполнения, которые сильно отличаются по эффективности.
Если Вы можете воспроизвести текст запроса для большого и маленького количества записей, то можно это проверить, запустив их в SSMS с показом реального плана выполения. Если это, действительно, так — то дальше нужно смотреть причину неэффективного плана.
Или, можно вытащитьь план сразу после выполнения долгого и быстрого запросов из вьюшек sys.dm_exec_cached_plans и sys.dm_exec_query_plan.
А когда запустите perfmon добавьте счётчик перекомпиляций планов. Это же можно посмотреть в профайлере.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.