[8.3] Анализ планов запросов (Управляемая консоль отчетов)

Публикация № 940250

Разработка - Инструментарий разработчика - Консоль запросов

Статья План запроса Анализ СУБД Эксперт по технологическим вопросам

Новый инструмент! Позволяет удобно работать с планами запросов, анализ планов в файловой базе.

С версии 2.6 в [8.3] Управляемая консоль запросов, отчетов добавлена возможность анализировать план запроса. С 2.7 поддерживается PostgresSQL.

На момент публикации анализ планов по технологическому журналу в управляемых формах прямо из консоли был только в типовой консоли от 1С. Основные улучшения сделаны относительно нее. Хотелось сделать план запроса понятнее, быстрее - лучше.

Настройка

Для начала анализа планов запроса необходимо произвести настройку, производится один раз. Данные в технологический журнал будут писаться всегда, но только по выполнению запросов в консоли для этого лучше сделать отдельную папку.

  1. Открываем консоль, заходим в настройки (кнопка на командной панели)
  2. Раздел Технологический журнал, ставим галочку "Анализировать план запроса"
  3. Указываем папку куда будут сохранятся логи (папка на  сервере)
  4. Нажимаем на ссылку "Пример файла", сохраняем
  5. Помещаем файл в папку %Program Files%\1cv8\%ВерсияПлатформы%\bin\conf на сервере или дополняем существующий файл логов настройками из файла
    В папке не более чем через 60 секунд должны появится папки с файлам, если этого не произошло то что то не так
  6. Сохранить настройки

Пример текста файла настройки технологического журнала:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Управляемая консоль отчетов 2.6.0 -->
<config xmlns="http://v8.1c.ru/v8/tech-log">
<dump create="false" type="0" prntscrn="false"/>
<log location="D:\1C_LOG3" history="24">
<event>
  <eq property="name" value="db2"/>
  <like property="context" value="%УправляемаяКонсольОтчетов%"/>
</event>
<event>
  <eq property="name" value="dbmssql"/>
  <like property="context" value="%УправляемаяКонсольОтчетов%"/>
</event>
<event>
  <eq property="name" value="dbpostgrs"/>
  <like property="context" value="%УправляемаяКонсольОтчетов%"/>
</event>
<event>
  <eq property="name" value="dboracle"/>
  <like property="context" value="%УправляемаяКонсольОтчетов%"/>
</event>
<event>
  <eq property="name" value="SDBL"/>
  <like property="context" value="%УправляемаяКонсольОтчетов%"/>
</event>
<event>
  <eq property="name" value="DBV8DBEng"/>
  <like property="context" value="%УправляемаяКонсольОтчетов%"/>
</event>
<property name="all"/>
  <property name="sql"/>
  <property name="plansqltext"/>
</log>
<plansql/>
</config>

Файл логов сильно не разрастается так как сохраняет только события консоли.
Анализ планов запроса слегка замедляет выполнение, если планы запросов не анализируются часто, лучше выключить.

После выполнения запроса на закладке результат должна появится кнопка "План..." открывающая анализ плана выполненного запроса

Анализ плана, возможности

Пример внешнего вида плана MSSQL

  • Жирным шрифтом выделяется 1/4 самых дорогих строк
  • Серым текстом шрифта отмечаются строки с нулевой стоимостью и строки обращения к конфигурации (обычно это инициализации значений и при повторном запуске они пропадают из плана)
  • Красным текстом выделяется когда количество строк по плану и факту отличается более чем в 2 раза
  • Можно сортировать по разным полям (по умолчанию сортируется по стоимости), 
    Свернуть все, Развернуть все
  • Отображается SQL запрос на соответствующей закладке
  • В подвале дерева подсчитываются итоговые значения
  • Запросы и планы отображаются в терминах 1С или SQL (по умолчанию 1С)
    В терминах 1С означает: _Document17 будет заменено на Докумен.Приход, аналогично с полями, для значения параметров ссылок вида 0хA328382ADD... (покажет пояснение значения)
  • Можно анализировать планы запросов файловой базы (не знаю насколько это востребовано)
  • По сравнению с анализом планов консолью ИТС здесь открытие анализа плана производится в несколько раз быстрее
  • Оператор и контекст собираются отдельно
  • Полная поддержка запросов (временные таблицы, параметры, пакеты)

От вас критика, предложения по улучшению

По планам запросам рекомендую посмотреть публикации:

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Darklight 27 20.11.18 09:39 Сейчас в теме
2. logarifm 1088 20.11.18 10:35 Сейчас в теме
3. Evg-Lylyk 3269 20.11.18 10:44 Сейчас в теме
(2) в самом начале статьи ссылка
4. serg_r 10.02.19 21:49 Сейчас в теме
5. serg-lom89 61 21.05.19 15:26 Сейчас в теме
6. Evg-Lylyk 3269 21.05.19 15:47 Сейчас в теме
7. turfur 07.12.20 16:52 Сейчас в теме
Можно анализировать планы запросов файловой базы (не знаю насколько это востребовано)

Добрый день! как это сделать?
8. Evg-Lylyk 3269 07.12.20 16:55 Сейчас в теме
(7) Прочитать статью, что не получается?
9. turfur 07.12.20 17:25 Сейчас в теме
Статью прочитал раз 5, Вот это : "В папке не более чем через 60 секунд должны появится папки с файлам ." условие не выполняется. Понимаю что вопрос не совсем к вам, но консоль говорит что не найден технологических журнал. Платформу пробовал и 32 и 64 8.3.18.1208 тесты провожу на УНФ 1.6 После создания файла из п.4 помещаю по адресу,как в п.5 (от куда платформу открываю) не видит он ТЖ. Права на папку давал полные
10. Evg-Lylyk 3269 07.12.20 17:31 Сейчас в теме
(9) Это уже какая то информация. Откуда берете файл?
11. turfur 08.12.20 09:41 Сейчас в теме
Качал все тут https://download.infostart.ru/8401521/gT0uH3d6Li2L2eIv/ . Файл logcfg.xml формирую по ссылке Пример файла, после ввода пути к папке логов. Все это тестирую на файловой.базе.
12. turfur 08.12.20 10:56 Сейчас в теме
Все , спасибо. Заработало. Пришлось удалить из файла logcfg.xml все кроме <property name="all"/> а потом обновить файл, когда все папки создались. план запроса появился.
Оставьте свое сообщение

См. также

Управляемая консоль запросов, отчетов 3.8.9 (расширение, внешняя обработка) Промо

Консоль запросов v8 v8::УФ v8::Запросы v8::СКД 1cv8.cf Абонемент ($m)

Работа с запросом и СКД, Полная поддержка пакетных запросов, временных таблиц, Сравнение результатов, текстов, Разбор структуры запроса в виде дерева, Анализ плана запроса, Групповая обработка

5 стартмани

14.08.2018    107655    2727    Evg-Lylyk    722    

Структура запроса (Infostart Toolkit)

Консоль запросов Прочие инструменты разработчика v8 v8::Запросы 1cv8.cf Бесплатно (free)

Описание механизма разбора запроса на части (дерево), используемого в IS Toolkit и Управляемой консоли отчетов

02.03.2021    1643    Evg-Lylyk    7    

Последний раз про срез последних (на каждую дату в запросе)

Инструментарий разработчика Практика программирования Консоль запросов Универсальные функции v8 v8::Запросы Бесплатно (free)

Срез последних на каждую дату в запросе. Известные факты о задаче: часто встречается на испытаниях соискателей на работу программистом 1с, постоянно провоцирует споры об оптимальном решении. В данном тексте приводятся замеры производительности различных вариантов решения задачи.

15.02.2021    4424    randomus    47    

Отладка логики запроса в консоли запросов ИР

Консоль запросов v8 1cv8.cf Бесплатно (free)

Облегчаем поиск причины неожиданного результата запроса в консоли запросов из подсистемы "Инструменты разработчика" (ИР)

05.01.2021    5255    tormozit    8    

Подсистема "COMExchange": консоль запросов в режиме «Консоль кода». Промо

Консоль запросов v8 1cv8.cf Россия Бесплатно (free)

Описана возможность использования обработки «Консоль запросов 1С+ADO» в качестве «консоли кода». При этом имеется возможность помещения результатов вычислений в «табло формул». Кроме результатов вычислений в это «табло» можно также вывести время выполнения и описание обработанных ошибок времени исполнения.

03.04.2014    26238    yuraos    2    

Отладка в Infostart Toolkit

Консоль запросов Прочие инструменты разработчика v8 1cv8.cf Бесплатно (free)

Отладка запросов, схем компоновки данных, просмотр содержимого менеджера временных таблиц.

05.11.2020    3190    Evg-Lylyk    16    

Улучшенный конструктор запроса тонкого клиента (Infostart Toolkit)

Инструментарий разработчика Консоль запросов v8 1cv8.cf Бесплатно (free)

Конструктор запросов тонкого клиента появился в платформе с 8.3.5 обладает рядом недостатков, которые возможно исправить. Передача входных таблиц, исправление связей и другое

07.09.2020    4138    Evg-Lylyk    17    

Обработка кодом результата запроса в Консоли запросов 9000

Консоль запросов v8::Запросы Бесплатно (free)

Пять вариантов обработки кодом в консоли запросов 9000: простое выполнение, построчно без индикации, построчно с индикацией, простое в фоне, построчно в фоне с индикацией.

01.06.2020    1779    kuza2000    7    

Подсистема "COMExchange", "Консоль запросов 1C + ADO" - сервис обработки выборки запроса: грузим курс «бакса» ЦБРФ из файла *.dbf или *.xlsx. Промо

Консоль запросов v8 КА1 УТ10 УПП1 Россия Бесплатно (free)

На примере загрузки курса валюты продемонстрированы возможности консоли запросов в составе подсистемы "COMExchange" для обработки данных из внешних файлов и их синхронизации с данными информационной базы 1С.

10.03.2013    33479    yuraos    3    

Управляемая консоль отчетов – новый функциональный инструмент для работы с запросами и СКД в управляемых формах

Прочие инструменты разработчика Консоль запросов v8::УФ v8::Запросы v8::СКД Бесплатно (free)

Консоль запросов и СКД – один из наиболее часто используемых программистом инструментов. Как с его помощью можно упростить разработку, в своем докладе на конференции Infostart Event 2019 Inception рассказал Евгений Люлюк, ведущий программист компании GLT.

06.04.2020    9252    Evg-Lylyk    0    

Консоль запросов для УФ с возможностью передачи готовой ТЗ в качестве параметра

Консоль запросов v8 v8::УФ Россия Бесплатно (free)

Небольшая статья о том, как передать готовую таблицу значений в качестве параметра запроса в консоли запросов.

11.07.2016    15054    vadim1011985    7    

Консоль запросов. Очередная гайка.

Консоль запросов v8 1cv8.cf Бесплатно (free)

Небольшое дополнение к консоли запросов. Позволяет создавать функцию вместе с текстом запроса.

23.07.2014    8325    mdmdvd    3    

Подсистема "COMExchange", консоль запросов, сервис обработки выборки запроса: корректируем регистры или «Берём банк, кассу, экспроприируем экспроприаторов». Промо

Консоль запросов v8 1cv8.cf Россия Бесплатно (free)

На примере шуточного примера продемонстрированы не шуточные возможности консоли запросов в составе подсистемы "COMExchange" для работы с регистрами, подчинёнными регистратору («обнуление» регистров, ввод начальных итогов (сведений), корректировка итогов).

31.03.2013    22730    yuraos    7