Изменения документа План выполнения запроса
Редактировал(а) Alexandr Fokin 2025/04/09 10:53
<
>
отредактировано Alexandr Fokin
на 2023/12/16 14:01
на 2023/12/16 14:01
отредактировано Alexandr Fokin
на 2024/09/10 15:23
на 2024/09/10 15:23
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -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 +----