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

Редактировал(а) Alexandr Fokin 2025/04/09 10:53

Последние авторы
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 |(% style="width:110px" %)Некоторые критерии|(% style="width:1384px" %)(((
19 | |Количество логических чтений
20 | |Количество затронутых в операции строк.
21 Соотношение планированного количества строк и фактического.
22 | |Порядок чтения. Используемые операторы чтения.
23 )))
24
25 ----
26
27 ==== Внутренние ссылки: ====
28
29 ====== Дочерние страницы: ======
30
31 {{children/}}
32
33 ====== Обратные ссылки: ======
34
35 {{velocity}}
36 #set ($links = $doc.getBacklinks())
37 #if ($links.size() > 0)
38 #foreach ($docname in $links)
39 #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument())
40 * [[$escapetool.xml($rdoc.fullName)]]
41 #end
42 #else
43 No back links for this page!
44 #end
45 {{/velocity}}
46
47 ----