powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Оптимизация запросов
18 сообщений из 18, страница 1 из 1
Оптимизация запросов
    #40037844
georgy_2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги, всем добрый день!
Есть какая-то литература/статьи/документация на счет того, на что нужно смотреть при оптимизации запросов, как правильно читать query plan/дерево и все к этому относящееся, как правильно оптимизировать. Не прошу рассказать, просто если у Вас есть ссылки на толковые материалы, буду очень благодарен. Интернет полон статей и слишком много общих фраз. Заранее благодарю и хорошего дня!
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40037870
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40037934
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invm
https://www.amazon.com/SQL-Server-Query-Performance-Tuning/dp/1430267437

За что ты его так?

ЗЫ. Оптимизация запроса начинается НЕ с чтения "query plan/дерево и все к этому относящееся".
101% оптимизации запроса обеспечивается его правильным написанием.
Чтения планов - это только от безысходности.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40037954
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222,

а как узнать - правильно написан или нет? Оптимальность определяется измеримыми величинами, а не внешним видом запроса. Или мы оптимизируем методом "тыка" или же смотрим на метрики, которые отображает план запроса и статистика выполнения. Затем приходит понимание - какой внешний вид оптимален и изучение плана требуется реже.
Есть вариант - пользоваться готовыми "рецептами", но этот вариант менее точный.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40037969
Фотография Павел Воронцов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222
invm
https://www.amazon.com/SQL-Server-Query-Performance-Tuning/dp/1430267437

За что ты его так?

ЗЫ. Оптимизация запроса начинается НЕ с чтения "query plan/дерево и все к этому относящееся".
101% оптимизации запроса обеспечивается его правильным написанием.
Чтения планов - это только от безысходности.

За что ты его так? Чтобы научиться правильно писать запросы полезно покурить планы. И по дереву постучать. Головой.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40037973
Фотография Павел Воронцов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов
aleks222,

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

Для начала полезно знать весь ассортимент написания запросов. То есть знать как минимум три способа сделать одно и то же - тогда просто переписыванием запроса можно добиться впечатляющих результатов. Наверно это столь нелюбимое "пользование рецептами", но оно работает. А так... Читайте доки, пробуйте, и всё получится.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038010
georgy_2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Павел Воронцов,

я с великим довольствием и постучу и все остальное сделаю, просто найти бы что почитать, что бы тоже бестолково не стучать
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038016
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
georgy_2012,

читайте всё подряд, лет через 5 научитесь. Здесь нет несущественных мелочей, как говорится. Попробуйте найти книги от автора Ицик Бен-Ган, статьи Paul White и Дмитрия Пилюгина.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038052
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов
aleks222,

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


Наружным осмотром.
План тут ваще не поможет.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038074
архивариус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
georgy_2012,
если совсем сначала можно почитать про
Search ARGumentS (SARG, SARGS, SARGABLE)
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038083
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222
Владислав Колосов
aleks222,

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


Наружным осмотром.
План тут ваще не поможет.

Наружный осмотр (внешний вид) запроса ничего не скажет о распределении данных, о покрытии индексами, о секциях, и т.д. Знать и помнить все о данных онлайн невозможно. Научный хотя бы в первом приближении подход к оптимизации требует измеримых метрик.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038093
pahanitto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aleks222
invm
https://www.amazon.com/SQL-Server-Query-Performance-Tuning/dp/1430267437

За что ты его так?

ЗЫ. Оптимизация запроса начинается НЕ с чтения "query plan/дерево и все к этому относящееся".
101% оптимизации запроса обеспечивается его правильным написанием.
Чтения планов - это только от безысходности.


спорно..... но по сути- если появляется такой вопрос - то читать книги по азам СКЛ. почитай https://progerlib.ru/sql-books

но мне нравиться больше другая от мастера MSSQL... не помню фамилию. от Мелкософта
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038118
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понимаю, о чем вы спорите?
С точки зрения экономии ресурсов/усилий на оптимизацию:
1) сначала наружный осмотр
2) а потом "пальпация и вскрытие"
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038145
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наружный осмотр помогает только в случае, если знаешь - чего ожидать от этого осмотра. чтобы получить эти знания необходимо или пользоваться готовыми решениями или смотреть - как устроен запрос. Интуитивно здесь ничего не понятно. Люди не рождаются электриками.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038184
PizzaPizza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что бы оптимизировать надо понимать как оно там работает под капотом

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

Ну или просто следовать базовым правилам вроде правильных индексов, (де)нормализации, понятного (компилятору) составленных запросов, обслуживания, понимания, что часто оптимизируется конкретная составляющая (скорость или размер базы).
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038217
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PizzaPizza
что бы оптимизировать надо понимать как оно там работает под капотом

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

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


Бред.
Отдельная "оптимизация" для MS SQL, оракела, постгресса и т.д. и т.п.

Может просто научиться писать запросы покороче, с минимумом соединений и группировок?
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038220
uaggster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
georgy_2012,

читайте всё подряд, лет через 5 научитесь. Здесь нет несущественных мелочей, как говорится. Попробуйте найти книги от автора Ицик Бен-Ган, статьи Paul White и Дмитрия Пилюгина.

То, что игра в шахматы - остаётся искусством даже сейчас, когда компьютер обыгрывает чемпионов мира, не значит, что им нельзя учиться на регулярной основе.
И, собственно, с TSQL - всё даже проще. Для 95% практического применения - достаточно, в общем, придерживаться пары-тройки десятков общих правил написания запросов из бест практиз, совсем примитивных, типа: не суйте пальцы в розетку применяйте функции к константе, а не полю, следите, чтобы при сравнении совпадали типы, всегда используйте exists вместо аналогичных конструкций и т.д., следите, чтобы запросы попадали в индексы, короче, что-то типа этого: https://www.mssqltips.com/sqlservertip/6073/sql-server-tsql-performance-best-practices-tips--part-1/
А вот когда это не поможет - тогда действительно SQL Server Query Performance Tuning

Кстати, на Специалисте был курс лекций по оптимизации запросов (подсказка - если жаль денег, то можно и так найти).
Вполне ничего себе, на мой взгляд.
Только если с нуля - сначала просмотрите их же курс просто по написанию запросов, вводный.
Там тоже много полезного.
...
Рейтинг: 0 / 0
Оптимизация запросов
    #40038557
georgy_2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, я нашел и прослушал курсы Федора Самородова, на мой скромный взгляд очень неплохо все объясняет. Не знаю какое отношение к нему в народе, но лично мне он на много вопросов (как новичку) ответил. Спасибо всем большое за ссылки и достаточно подробное объяснение, понял, что общего какого-то мнения не бывает)) Буду грызть
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Оптимизация запросов
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]