Исходный код вики План выполнения запроса
Версия 12.13 от Alexandr Fokin на 2024/06/20 21:29
Последние авторы
| author | version | line-number | content |
|---|---|---|---|
| 1 | |(% style="width:110px" %) |(% style="width:1384px" %)((( | ||
| 2 | |[[MSSQL>>doc:Разработка.Базы данных.SQL.MSSQL.WebHome]]|[[План выполнения запроса>>doc:Разработка.Базы данных.SQL.MSSQL.Механизмы.План выполнения запроса.WebHome]] | ||
| 3 | |[[PostgreSQL>>doc:Разработка.Базы данных.SQL.PostgreSQL.WebHome]]|[[План выполнения запроса>>doc:Разработка.Базы данных.SQL.PostgreSQL.Механизмы.PostgreSQL\. План выполнения запроса.WebHome]] | ||
| 4 | | | | ||
| 5 | ))) | ||
| 6 | |(% style="width:110px" %) |(% style="width:1384px" %)В рамках языка SQL в первую очередь определяется какие данные необходимо отобрать на основании запроса, но фактический алгоритм обращения к хранилищам формируется самой БД. | ||
| 7 | БД может иметь более одного способа получить одни и те-же данные (обращение к таблице или к [[Индексы>>doc:Разработка.Базы данных.Механизмы.Индексы.WebHome]], порядок выборок и соединений, фильтрация и сортировка и другое). | ||
| 8 | БД в некоторым смысле оценивает разные варианты получения данных (используя в том числе данные [[Статистика>>doc:Разработка.Базы данных.Механизмы.Статистика.WebHome]], оценивая кол-во извлекаемых строк и другое), стремясь найти наиболее эффективный способ получить необходимый результат. | ||
| 9 | |(% style="width:110px" %) |(% style="width:1384px" %)Оптимизация запроса - это попытка понять как БД выполняется запрос, выявить проблемные узлы плана, попытаться изменить запрос таким образом, чтобы повысить его эффективность. | ||
| 10 | Одна из возможных причин проблем с запросом это ситуация, когда оценочная и фактическая стоимости выполнения выбранного плана сильно различаются, что приводит к тому, что БД выбирает план, который на практике не является самым эффективным (или по крайне мере работает значительно хуже возможного). | ||
| 11 | |(% style="width:110px" %) |(% style="width:1384px" %)((( | ||
| 12 | Query Plan nodes | ||
| 13 | |||
| 14 | [[Конвейеризация операций>>doc:Архитектура и модели.Модели.Конвейеризация операций.WebHome]] | ||
| 15 | ))) | ||
| 16 | |(% style="width:110px" %) |(% style="width:1384px" %)Выявление долгих запросов в эксплуатируемой системе (данные о выполняемых запросах), выявление планов выполнения. | ||
| 17 | Выявление причин, оптимизация запросов. | ||
| 18 | |||
| 19 | ---- | ||
| 20 | |||
| 21 | ==== Внутренние ссылки: ==== | ||
| 22 | |||
| 23 | ====== Дочерние страницы: ====== | ||
| 24 | |||
| 25 | {{children/}} | ||
| 26 | |||
| 27 | ====== Обратные ссылки: ====== | ||
| 28 | |||
| 29 | {{velocity}} | ||
| 30 | #set ($links = $doc.getBacklinks()) | ||
| 31 | #if ($links.size() > 0) | ||
| 32 | #foreach ($docname in $links) | ||
| 33 | #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument()) | ||
| 34 | * [[$escapetool.xml($rdoc.fullName)]] | ||
| 35 | #end | ||
| 36 | #else | ||
| 37 | No back links for this page! | ||
| 38 | #end | ||
| 39 | {{/velocity}} | ||
| 40 | |||
| 41 | ---- |