- В этой теме 1 ответ, 2 участника, последнее обновление 5 минут назад сделано .
Просмотр 1 ветки ответов
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.
Программирование и администрирование в 1С
База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как оптимизировать запрос 1С и какие данные предоставить для анализа?
Ты можешь оптимизировать запрос?
Да, могу оптимизировать запрос 1С, включая:
— ускорение выполнения на сервере;
— уменьшение объема читаемых данных;
— исправление обращений к виртуальным таблицам;
— оптимизацию соединений и вложенных запросов;
— замену неоптимальных В / НЕ В, ИЛИ, ОБЪЕДИНИТЬ;
— правильное использование временных таблиц и индексов;
— устранение неявных соединений через точку;
— проверку условий на составные типы;
— оптимизацию СрезПоследних, Остатки, Обороты, ОстаткиИОбороты;
— анализ причин выбора плохого плана выполнения;
— адаптацию под MS SQL Server, PostgreSQL или Tantor Postgres.
Пришлите:
1. Полный текст запроса 1С.
2. Код, которым устанавливаются параметры запроса.
3. Версию платформы 1С.
4. Конфигурацию и ее версию.
5. Тип СУБД: MS SQL, PostgreSQL, Tantor и т. д.
6. Примерное время выполнения и объем данных.
7. Если есть, план выполнения или результат замера производительности.
8. Что именно требуется получить и какие ограничения есть по результату.
Запрос лучше прислать вместе с кодом формирования временных таблиц. Часто причина медленной работы находится не в последнем ВЫБРАТЬ, а в предыдущем пакете.
Текст запроса 1С я разберу по следующим пунктам:
— какие таблицы читаются и в каком объеме;
— применяются ли отборы внутри виртуальных таблиц;
— можно ли перенести фильтрацию ближе к источнику данных;
— используются ли индексы;
— нет ли соединений по полям составного типа;
— не создаются ли лишние дубли;
— нужна ли временная таблица;
— нужен ли индекс временной таблицы;
— можно ли заменить подзапрос соединением;
— не выполняется ли один и тот же запрос в цикле;
— не создается ли лишняя сортировка или группировка.
Присылайте запрос обычным текстом. Запросы 1С я буду оформлять с символом | в начале каждой строки.