Для оптимальной по скорости пакетной обработки у менеджеров объектов базы 1C:Предприятие в версии 8.3.26 будет добавлен новый метод. Это повысит производительность системы на платформе 1С в рамках крупных внедрений, рассказали в блоге вендора «Заметки из Зазеркалья».
Что сейчас не так
Разработчики платформы проанализировали код различных типовых конфигураций 1С и зафиксировали слишком частое выполнение пакетной обработки объектов БД по заданному набору ссылок на них. В ходе обработки для загрузки каждого объекта в базу применяется метод Ссылка.ПолучитьОбъект(). После этого анализируются значения реквизитов и, если нужно, объект преобразовывается.
Факт поочередного обращения к базе данных по всем объектам значительно замедляет весь процесс. Тем временем, в платформе 1С с версии 8.0 уже есть встроенный механизм выборок, позволяющий за 1 обращение к БД массово обработать сразу множество справочников, документов и т.д.
Как будет в версии 1С:Предприятие 8.3.26
Опираясь на свой анализ и на внешние обращения 1С-разработчиков, было решено оптимизировать пакетную обработку добавлением в менеджеры объектов метода ВыбратьПоСсылкам(<Источник>, <Колонка>) для обратной выборки по заданному набору ссылок.
Новый метод аналогичен стандартному Выбрать(), тоже возвращает выборку объектов соответствующего типа и считывает объекты порциями. Отличием является итоговая коллекция ссылок на нужные объекты. А для целостного считывания объектов необходимо совершить дополнительные действия.
К примеру, когда товар в рамках какой-либо операции переносится между заказами, то он может оказаться в них обоих из-за считывания до и после миграции данных. Получается, что целостность данных будет обеспечена лишь по объектам точечно, а не всей выборки.
В 1С уверяют, что новый метод будет полезен на проектах крупных корпоративных внедрений для роста производительности системы.
Присоединяйтесь к обсуждениям в нашем TG-канале Новости из мира 1С.
консультация эксперта
самые свежие новости 1 раз в месяц