25.03.2025 Константин Маркин 1799
Зависимость связей в запросах от индексов БД ...

Содержание:

1. Подготовка системы компоновки данных 1С к тестированию

2. Параметры выполнения тестов в системе программирования 1С


Про индексирование в базах данных и конкретно в 1С уже написано очень много статей и большинство аспектов освещено. В сегодняшней статье будем проверять тезисы из официального руководства https://its.1c.ru/db/v8std/content/652/hdoc.


Проверим следующие тезисы:   

- для попадания в индекс важен порядок полей в соединении таблиц (поля должны находиться в начале).

- для попадания в индекс важен порядок полей в выборке (поля должны идти подряд, без вклинивания).   

 

1. Подготовка системы компоновки данных 1С к тестированию


Создадим демонстрационную базу данных. Регистр накопления ДенежныеСредства, регистр сведений СчетаПокупателей, ОтправкаУведомлений. Движения в регистры делаются документами СчетНаОплату и ПоступлениеДенежныхСредств.

 


Конфигурация тестовой базы

 

В регистрах установим флаг индексировать только у полей Контрагент и Договор, у измерения Организация не будем ставить флаг Индексирование.


Платформа 1С создаст индексы по этим полям.

    


Индекс по полю Контрагент

   


Индекс по полю Договор

 


Индекс по полю Организация

 

Заполним данными. Записей в регистре ДенежныеСредства — 5 534 400, регистре СчетаПокупателей - 5 534 000, справочнике Контрагенты — 10 000, справочнике Договоры - 100 000.

            

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


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

 

2. Параметры выполнения тестов в системе программирования 1С


База данных развернута на сервере Postgres15.5.

Замеры выполняются без обхода выборки, только время выполнения.

После каждого запроса очищаем статистику pg_stat_reset().

На сервере запущен только сервер 1С и сервер баз данных.

На сервере установлена только одна база данных.

Замеры каждого запроса производятся по 5 раз с очисткой статистики и указанием среднего времени.

 

Выполним запросы из Табл.1

Табл.1 Описание выполняемых запросов

1.png
2.png
3.png
4.png
5.png
6.png

 

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


При выполнении было замечено, что если не очищать статистику, то план запросов оптимизируется, и выигрыш по производительности снижается и не превышает 8-10 %. В некоторых случаях перестановки полей и вклинивания перестают менять время выполнения.


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


Специалист компании ООО "Кодерлайн"

Константин Маркин

Наши проекты

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

Внедренное типовое решение:
1С:Управление производственным предприятием

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:

- Совместная работа по внедрению разных решений, в том числе «1С:ERP Управление...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Ална-Байк»
ИП Титов Виктор Сергеевич «Ална-Байк»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

- Управление складами;
- Управление заказами поставщиков;
- Управление зак...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Управление цепочками поставок Оптовая торговля ...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:
1С:Управление корпоративными финансами

- Финансово-бухгалтерский блок
- Казначейство ...

Автоматизация кадрового учета на базе ПП "1С:Зарплата и управление персоналом" в ТД НМК
ООО «Торговый дом Нальчикский молочный комбинат»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Кадровый учет;
- Расчет зарплаты;
- Регламентированная отчетность;
- А...

ООО «Вистеон Автоприбор Электроникс»
ООО «Вистеон Автоприбор Электроникс»

Отрасль:

Внедренное типовое решение:
1C:Управление производственным предприятием

- Управленческий учет; - Расчет зарплаты; - Логистика адресного склада; - Учет ...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Бухгалтерия КОРП

Бухгалтерский учет Производственные операции Регламентированная отчетнос...

Автоматизация контроля исполнительской дисциплины на базе ПП «1С:Документооборот 8 ПРОФ»
ООО «ФСК Лидер»

Отрасль:
Строительство и девелопмент

Внедренное типовое решение:
1С:Документооборот 8 ПРОФ

- Делопроизводство;
- Учет и хранение документов;
- Учет и контроль исполне...

Внедрение 1С:Управление торговлей
ООО «Амперсенд»

Отрасль:
Оптовая торговля

Внедренное типовое решение:
1С:Управление торговлей

- Оформление заказов поставщикам;
- Управление отношениями с поставщиками;...

АО "Нижегородский водоканал"
АО "Нижегородский водоканал"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

-Кадровый учет
-Расчет зарплаты
-Регламентированная отчетность
-Подбор ...

Внедрение ПП "1С:CRM ПРОФ" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

Отрасль:
Производство

Внедренное типовое решение:
1С:CRM ПРОФ

- Управление отношениями с клиентами (CRM) ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение