Механизмы - План выполнения запроса

Page / - Изменено Alexandr Fokin в 2022/11/19 16:24

План выполнения запроса

Изменено Alexandr Fokin

в 2022/11/19 16:24

Оглавление

MSSQL План выполнения запроса PostgreSQL План выполнения запроса
В рамках языка SQL в первую очередь определяется какие данные необходимо отобрать на основании запроса, но фактический алгоритм обращения к хранилищам формируется самой БД. БД может иметь более одного способа получить одни и те-же данные (обращение к таблице или к Индексы, порядок выборок и соединений, фильтрация и сортировка и другое). БД в некоторым смысле оценивает разные варианты получения данных (используя в том числе данные Статистика, оценивая кол-во извлекаемых строк и другое), стремясь найти наиболее эффективный способ получить необходимый результат.
Оптимизация запроса - это попытка понять как БД выполняется запрос, выявить проблемные узлы плана, попытаться изменить запрос таким образом, чтобы повысить его эффективность. Одна из возможных причин проблем с запросом это ситуация, когда оценочная и фактическая стоимости выполнения выбранного плана сильно различаются, что приводит к тому, что БД выбирает план, который на практике не является самым эффективным (или по крайне мере работает значительно хуже возможного).
Query Plan nodes Конвейеризация операций
Выявление долгих запросов в эксплуатируемой системе (данные о выполняемых запросах), выявление планов выполнения. Выявление причин, оптимизация запросов.
Некоторые критерии	Количество логических чтений Количество затронутых в операции строк. Соотношение планированного количества строк и фактического. Порядок чтения. Используемые операторы чтения.

Внутренние ссылки:

Дочерние страницы:

Обратные ссылки:

Пагинация | Paging

Сценарии

PostgreSQL. План выполнения запроса