Изменения документа План выполнения запроса

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

<
От версии < 6.1 >
отредактировано Alexandr Fokin
на 2023/12/16 14:01
К версии < 12.14 >
отредактировано Alexandr Fokin
на 2024/09/10 15:23
>
Изменить комментарий: К данной версии нет комментариев

Комментарий

Подробности

Свойства страницы
Содержимое
... ... @@ -1,3 +1,47 @@
1 -|(% style="width:110px" %)[[MSSQL>>doc:Разработка.Базы данных 2.SQL.MSSQL.WebHome]]|(% style="width:1384px" %)[[План выполнения запроса>>doc:Разработка.Базы данных 2.SQL.MSSQL.Механизмы.План выполнения запроса.WebHome]]
2 -|(% style="width:110px" %)[[PostgreSQL>>doc:Разработка.Базы данных.SQL.PostgreSQL.WebHome]]|(% style="width:1384px" %)[[План выполнения запроса>>doc:Разработка.Базы данных.SQL.PostgreSQL.Механизмы.PostgreSQL\. План выполнения запроса.WebHome]]
3 -|(% style="width:110px" %) |(% style="width:1384px" %)
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 +----