Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
Подробности тут.
29 апр 11, 11:58    [10585765]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
DeColo®es,

Дмитрий, анонс заинтриговал..Особенно "техника написания "быстрых" запросов" =) Я всегда подозревал что от меня что-то скрывает тайное правительство! надеюсь увидеть техники секретного кунг-фу (кимоно брать?) и фаталити (клеенку для крови или сразу пластиковый мешок?) =)
Ну а если серьезно, спасибо заранее за труды, обязательно постараюсь посетить этот доклад!
29 апр 11, 22:52    [10589740]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
Возможно, еще будет отдельная мини-сессия по SQL Sever.
Принимаю предложения по её содержанию.
Пока предположительно буддет одна из тем - "Best practice по настройке SQL Server" либо "Индексы в SQL Server - эффективное использование"
4 май 11, 13:48    [10603654]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
DeColo®es,
лично я +1 за индексы!

насчет предложений по содержанию, надо будет подумать...
4 май 11, 14:00    [10603759]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
Доклад опубликован на techdays.ru.
8 июн 11, 23:32    [10786526]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
DeColo®es, вы хороший докладчик. Пока поглядел обзорно, потому как 65 минут на ночь глядя не осилю))). Но уже по 10 минутам просмотра вижу, что к этому докладу обязательно вернусь. Спасибо.
9 июн 11, 03:04    [10786852]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
ViPRos
Member

Откуда:
Сообщений: 9946
kDnZP,

докладчик то он как раз плохой
и доклад такой обзорный нафиг не нужен был
надо было честно че то оптимизировать и показать, а на остальное ссылки на БОЛ
а так получился пересказ оглавления бол
9 июн 11, 12:28    [10788767]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
ViPRos, не врубился в логику... Доклад плохой (что спорно, т.к. целевая группа может быть разной) и из этого следует, что докладчик тоже плохой? Я давал оценку исходя из умения говорить. С этим вродь все нормально. По сути же самого доклада ничего пока сказать не готов, т.к. просмотрел 10 минут и слегка еще проклацал))). Спать хотелось и не до докладов было. Но сегодня обязательно погляжу в полном варианте. Вот тогда и будет сформировано мнение о докладе.
9 июн 11, 12:40    [10788904]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
ViPRos,
если есть претензии именно как к доладчику - озвучте, учту в дальнейшем.

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

Тема оптимизации сама по себе интересна многим, но большинство даже не начинает читать "оглавление BOL".
Собственно всё, что можно было уложить в отведенный час - именно сделать обзор основных понятий и дать некие "зацепки" для дальнейшей работы.

Hardcore оптимизация в режиме реального времени - тема интересная, но её смогут полноценно осознать относительное осилить небольшое число специалистов, большинство которых к тому же "и так все знает". Прежде, чем говорить о cardinality, нужно, чтобы аудитория понимала, что это такое и зачем нужно.
Есть планы прочитать "полную версию" доклада в Харькове - там будет 2 часа, больше примеров, больше информации. Но пока только планы.
9 июн 11, 12:54    [10789044]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
ViPRos
Member

Откуда:
Сообщений: 9946
DeColo®es,

ну, я , как всегда, чересчур категорично высказался
просто были повышенные ожидания
по части желаний к докладу -
меня интересует -
динамическое управление оптимальностью (не пост фактум, а находу),
восстановление исходного текста СКЛ по оптимальным планам, запросы непосредственнно к имеющимся индексам и т.д.
9 июн 11, 13:23    [10789325]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
ViPRos
динамическое управление оптимальностью (не пост фактум, а находу),
восстановление исходного текста СКЛ по оптимальным планам, запросы непосредственнно к имеющимся индексам и т.д.
Честно говоря не понял о чем речь.
Ни про "динамеческое управление" ни про "восстановление".

Ну а принудительное использование индексов - на это просто хинты есть, если речь об этом.
9 июн 11, 13:59    [10789629]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
DeColo®es
Есть планы прочитать "полную версию" доклада в Харькове - там будет 2 часа, больше примеров, больше информации. Но пока только планы.

С этого места подробнее.
Пароли, явки, адреса.
9 июн 11, 14:53    [10790067]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
Anddros
Member

Откуда:
Сообщений: 1077
Честно говоря, тоже ожидал от доклада большего. Конечно, в часовой доклад много всего не впихнешь. В итоге и получилась 'Оптимизация запросов для чайников'. :)

Кое-с-чем не согласен. Далеко не всегда меньшее число reads приводит к меньшему времени выполнения. Ну и рекомендация, что если меньше 10000 или 1000 записей во времянке, то следует использовать табличную переменную - та еще засада. Порой уже при десятке записей в табличной переменной формируются тааакие планы - врагу не пожелаешь. :) 10 table scan'ов по большой таблице может занять времени в 10 раз больше одного скана, на который и расчитывает оптимизатор в момент выбора плана.

А то, что оптимизатор начинает рассматривать планы именно с того порядка таблиц, что указан в запросе - это достоверная информация? Не доводилось раньше слышать этого. Если оно действительно так, то буду пользоваться. Спасибо!

По большому счету, доклад хороший, но расчитан на аудиторию рангом пониже большинства постоянных обитателей этого форума. :)
9 июн 11, 15:01    [10790130]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
kDnZP
Member [заблокирован]

Откуда: ★[msg=16399436]★[msg=20850760]
Сообщений: 11289
Anddros
...Порой уже при десятке записей в табличной переменной формируются тааакие планы - врагу не пожелаешь...

Угу, тоже на такую хрень нарывался(((. Посему табличные переменные использую с недоверием и осторожностью.
9 июн 11, 15:11    [10790211]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
Anddros
Порой уже при десятке записей в табличной переменной формируются тааакие планы - врагу не пожелаешь. :)
Ну так используйте хинты или опцию recompile (но если что, то я всё буду отрицать... ;) )
9 июн 11, 15:15    [10790247]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
kDnZP
Угу, тоже на такую хрень нарывался(((. Посему табличные переменные использую с недоверием и осторожностью.
В табличных переменных тоже неплохо бы индексы задавать в меру того, что позволяет версия сервера.
9 июн 11, 15:15    [10790251]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
locky
С этого места подробнее.
Пароли, явки, адреса.
Организовывает Денис Резник.
Более подробно пока не знаю. :)
Очень постараюсь приехать.
9 июн 11, 15:26    [10790337]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31980
DeColo®es,

Отличный доклад, спасибо!

К сожалению, не посетил DevCon - был в отпуске...
9 июн 11, 15:31    [10790363]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
Anddros
Member

Откуда:
Сообщений: 1077
DeColo®es
Anddros
Порой уже при десятке записей в табличной переменной формируются тааакие планы - врагу не пожелаешь. :)
Ну так используйте хинты или опцию recompile (но если что, то я всё буду отрицать... ;) )

С опцией recompile поведение табличной переменной будет мало отличаться от поведения временной таблицы. :) Применительно к одному запросу, я имею в виду. Но вообще тема интересная. Для одного запроса оптимизатор считает, что в переменной одна запись, для другого - куча. :) Самое интеоресное, что статистика по ТП, расчитанная в одном запросе с recompile, в следующем - без recompile - не используется. Оптимизатор опять считает, что в табличной переменной одна запись.
9 июн 11, 15:45    [10790488]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
Anddros,

Это может происходить из-за рекомпиляции инструкций. Например, у вас табличная переменная в процедуре используется в двух запросах к разным таблицам. Схема одной из таблиц меняется и при следующем выполнении план для этой инструкции перекомпилируется, в то время как второй остается. И получается что в одной процедуре табличная переменная может быть оценена и в 1 строку и в 500.
9 июн 11, 16:07    [10790687]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
Anddros
Порой уже при десятке записей в табличной переменной формируются тааакие планы
Временка тоже не торт. Порой full scan + loop join по PK
Приходится хинтовать очевидные вещи WITH(Index(PK_MyTempTable)), (по кластерному естественно).

Грех жаловаться при незарегеном баге.
9 июн 11, 16:14    [10790749]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
SomewhereSomehow
И получается что в одной процедуре табличная переменная может быть оценена и в 1 строку и в 500.
Даёшь эмуляцию статистики через хинты (Rows (@TableName = <ApproximatelyRowsCount>)).
9 июн 11, 16:19    [10790791]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Mnior
SomewhereSomehow
И получается что в одной процедуре табличная переменная может быть оценена и в 1 строку и в 500.
Даёшь эмуляцию статистики через хинты (Rows (@TableName = <ApproximatelyRowsCount>)).

ты не поверишь....
Бойан!
9 июн 11, 16:25    [10790846]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
Anddros
Member

Откуда:
Сообщений: 1077
locky
Mnior
пропущено...
Даёшь эмуляцию статистики через хинты (Rows (@TableName = <ApproximatelyRowsCount>)).

ты не поверишь....
Бойан!
Легко! :)

Сравниваем estimated number of rows:
select * from bigTable
select * from (select top 15 with ties 1 ыыы,* from bigTable order by 1)t
Во втором случае оптимизатор считает, что на выходе у нас 15 записей.
9 июн 11, 16:39    [10790947]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация запросов в SQL Server - доклад на DevCon'11  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Anddros,

имелось в виду - "просили уже". Давно.
9 июн 11, 16:52    [10791035]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить