Оптимизация кода Запрос в цикле Или Таблица в БП3
Дорогие коллеги! Хотелось узнать ваше мнение насчет оптимизации алгоритма одной задачи.
Требуется сравнить проводки в двух базах в разрезе регистраторов из списка. Один алгоритм - запрос по каждому регистратору из списка (Запрос в цикле). Этот алгоритм реализован, но работает не очень быстро. Второй алгоритм - выбрать сразу выбрать все проводки по списку одним запросом в таблицу и работать потом только с ней (отбор в таблице по регистратору). Будет ли второй способ быстрее и не будет ли переполнения памяти из-за объема таблиц?
Требуется сравнить проводки в двух базах в разрезе регистраторов из списка. Один алгоритм - запрос по каждому регистратору из списка (Запрос в цикле). Этот алгоритм реализован, но работает не очень быстро. Второй алгоритм - выбрать сразу выбрать все проводки по списку одним запросом в таблицу и работать потом только с ней (отбор в таблице по регистратору). Будет ли второй способ быстрее и не будет ли переполнения памяти из-за объема таблиц?
По теме из базы знаний
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) "В разрезе регистраторов" - это как? Там еще хотя бы номер строки нужен. А если в одной из баз поменяли порядок записи движений, т.е. проводка - по всем своим полям - та же самая, но номера записей различаются. Если количество записей очень большое, то имеет смысл подумать о многопоточной сверке порциями, разбив, например по месяцам. Или, если документы те же в разных периодах, то можно пойти путем выполнения обновлений типовых, создать на плане обмена пачку узлов, в них зарегистрировать то что вы будете проверять и покатиться несколькими потоками (один узел - один поток).
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот