DBCC Freeproccache значительно ускорил время выполнения SP, почему?

Также проверьте/etc/hosts.allow и/etc/hosts.deny

Попытайтесь соединиться от поля http://127.0.0.1 Redhat. Если у Вас только есть оболочка, можно использовать рысь или ссылки.

3
задан 27 July 2011 в 01:46
1 ответ

Короткий ответ: сниффинг параметра.

Длинный ответ: когда Вы первый показ, хранимая процедура, оптимизатор запросов смотрит на параметры, передали ему и метаданные о запрашиваемых объектах. Если те метаданные изменяются значительно со временем (например, изменения гистограммы статистики), или если начальные параметры не являются представительными для типичного вызова, план, что кэши оптимизатора могут стать субоптимальными. Путем выполнения freeproccache Вы избавляетесь от "плохого" плана и вынуждаете оптимизатор запросов взять другое выполнение в нем.

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

2
ответ дан 3 December 2019 в 07:12

Теги

Похожие вопросы