Исходный код вики План выполнения запроса

Версия 12.11 от Alexandr Fokin на 2024/04/29 13:45

Скрыть последних авторов
Alexandr Fokin 12.5 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 )))
Alexandr Fokin 12.7 6 |(% style="width:110px" %) |(% style="width:1384px" %)В рамках языка SQL в первую очередь определяется какие данные необходимо отобрать на основании запроса, но фактический алгоритм обращения к хранилищам формируется самой БД.
Alexandr Fokin 12.10 7 БД может иметь более одного способа получить одни и те-же данные (обращение к таблице или к [[Индексы>>doc:Разработка.Базы данных.Механизмы.Индексы.WebHome]], порядок выборок и соединений, фильтрация и сортировка и другое).
Alexandr Fokin 12.6 8 БД в некоторым смысле оценивает разные варианты получения данных (используя в том числе данные [[Статистика>>doc:Разработка.Базы данных.Механизмы.Статистика.WebHome]], оценивая кол-во извлекаемых строк и другое), стремясь найти наиболее эффективный способ получить необходимый результат.
9 |(% style="width:110px" %) |(% style="width:1384px" %)Оптимизация запроса - это попытка понять как БД выполняется запрос, выявить проблемные узлы плана, попытаться изменить запрос таким образом, чтобы повысить его эффективность.
10 Одна из возможных причин проблем с запросом это ситуация, когда оценочная и фактическая стоимости выполнения выбранного плана сильно различаются, что приводит к тому, что БД выбирает план, который на практике не является самым эффективным (или по крайне мере работает значительно хуже возможного).
Alexandr Fokin 12.9 11 |(% style="width:110px" %) |(% style="width:1384px" %)Query Plan nodes
Alexandr Fokin 12.11 12 |(% style="width:110px" %) |(% style="width:1384px" %)Выявление долгих запросов в эксплуатируемой системе, выявление планов выполнения.
13 Выявление причин, оптимизация запросов.
Alexandr Fokin 12.4 14
15 ----
16
17 ==== Внутренние ссылки: ====
18
19 ====== Дочерние страницы: ======
20
21 {{children/}}
22
23 ====== Обратные ссылки: ======
24
25 {{velocity}}
26 #set ($links = $doc.getBacklinks())
27 #if ($links.size() > 0)
28 #foreach ($docname in $links)
29 #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument())
30 * [[$escapetool.xml($rdoc.fullName)]]
31 #end
32 #else
33 No back links for this page!
34 #end
35 {{/velocity}}
36
37 ----