Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
30.04.2002, 14:22
|
|||
|---|---|---|---|
|
|||
Разные execution plans для запросов и процедур |
|||
|
#18+
Кто-нибудь сталкивался с тем, что при помещении запроса внутрь хранимой процедуры, генерится совершенно другой execution plan - и производительность может отличаться в разы. Я последнее время часто с этим сталкиваюсь, как на SQL7 так и на SQL2000. Пока нашел только одно решение - использовать hints. Чаще всего при запуске запроса из QA генерится план, использующий LOOP JOINS, а в процедурах используется либо MERGE, либо HASH joins. Не очень я люблю hints использовать - изменится завтра статистика, и жестко-заданный план станет неэффективным. С другой стороны - ждать результат из процедуры 5 секунд, в то время как тот же запрос из QA вернет результат за 700 миллисекунд, тоже неохота. И еще один связанный вопрос - если я явно прописываю тип джойна в виде Table1 INNER LOOP JOIN Table2 - SQL всегда выдает предупреждение, что тип джойна был переопределен - эти сообщения иногда напрочь убивают клиентское приложение, которое их не ожидает. Если я делаю то же самое, но в виде OPTION (LOOP JOIN) - никаких сообщений не генерится. Проблема в том, что OPTION действует на весь запрос, в котором может быть несколько джойнов, а иногда хотелось бы переопределить только один джойн... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.04.2002, 19:03
|
|||
|---|---|---|---|
Разные execution plans для запросов и процедур |
|||
|
#18+
A with recompile не помогает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.05.2002, 09:53
|
|||
|---|---|---|---|
|
|||
Разные execution plans для запросов и процедур |
|||
|
#18+
recompile не помогает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2002, 11:50
|
|||
|---|---|---|---|
|
|||
Разные execution plans для запросов и процедур |
|||
|
#18+
при компиляции Sp с параметрами оптимизатор, кажется, руководствуется средними селективностями по параметрам. При выполнении просто запроса он точнее оценивает селективности (т.к. знчения параметров уже известны) и строит лучший план запроса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&tablet=1&tid=1822873]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
50ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
23ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 324ms |

| 0 / 0 |
