Бывают ситуации, когда база 1С имеет очень большой размер и процесс реструктуризации (обновления) занимает много времени. Для некоторых организаций это очень критично, так как технологический промежуток, когда можно сделать обновление бывает очень коротким и процесс не успевает закончится в отведенное время.
Я расскажу о трех способах как можно ускорить этот процесс.
1️⃣ Фоновое обновление конфигурации базы данных
В процессе функционирования прикладного решения в него, как правило, вносятся изменения. Эти изменения могут затрагивать структуру базы данных. В таком случае при обновлении конфигурации выполняется реструктуризация информационной базы.
Реструктуризация выполняется в режиме монопольного доступа, то есть в этот период работа пользователей с программой невозможна.
При обычном обновлении монопольный доступ требуется на все время выполнения реструктуризации, и этот процесс должен был быть непрерывным. Если он прерывался, в следующий раз приходилось начинать заново.
При использовании фонового обновления основная масса изменений при реструктуризации выполняется в фоновом режиме, без прекращения работы пользователей. Монопольный доступ по-прежнему требуется, но лишь в последней, короткой фазе реструктуризации.
Фоновая реструктуризация может быть запущена интерактивно, из режима Конфигуратор или из командной строки. Процесс фоновой реструктуризации можно временно останавливать, а затем продолжать с того места, на котором остановились.
Ограничения:
- Клиент-серверный вариант системы;
- Использование в базе расширений конфигурации, в которых добавлены собственные объекты хранения данных;
2️⃣ Обновление через копию информационной базы
Для больших баз обновления реализуется через копирование информационной базы, обновление копии и перевод работы пользователей в новую информационную базу.
Обновление через копию ИБ позволяет применить новую версию программы без остановки работы пользователей. Технология предполагает создание копии, обновление этой копии, с последующей отправкой накопленных данных из рабочей информационной базы в копию. И последующая замена рабочей базы на эту обновленную копию.
Запуск обновления производится из раздела Настроек НСИ и администрирование — Администрирование — Обслуживание — Обновление через копию.
Ограничения:
- Механизм ориентируется только на клиент-серверные ИБ;
- Единовременно может выполняться только одно обновление через копию;
- Создание копии выполняется администратором (самостоятельно), средствами СУБД;
- В случае измененной конфигурации требуется самостоятельно разрабатывать правила обмена;
- Нельзя использовать если база использует РИБ;
3️⃣ Оптимизированный механизм реструктуризации
Реструктуризация может выполняться двумя разными способами:
- Обычный механизм реструктуризации. Единственный вариант реструктуризации в «1С:Предприятии» версии 8.3.10 и младше. В данном режиме реструктуризация всегда выполняется через создание копии каждой изменяемой таблицы с последующим преобразованием каждой строки данных в конфигураторе или на стороне сервере (в зависимости от настроек выполнения реструктуризации);
- Оптимизированный механизм реструктуризации. В данном режиме происходит попытка выполнить максимальное количество действий на стороне СУБД, а также выполнить модификацию существующих данных и индексов вместо создания копии и переноса данных с обработкой. В данном режиме большинство действий выполняется на стороне сервера системы 1С:Предприятие.
При выполнении реструктуризации из конфигуратора, используемый механизм реструктуризации определяется параметром UpdateDBCfg файла conf.cfg. Конфигурационный файл анализируется на том компьютере, где запущен конфигуратор. Указание «стороны» реструктуризации (просто или на сервере) определяет наличие диалога с возможностью подтвердить или отказаться от выполнения реструктуризации.
Ограничения:
- Работает только для клиент-серверного варианта работы информационной базы в том случае, если в качестве СУБД используется Microsoft SQL Server или PostgreSQL;
- На компьютере с которого происходит установка должна быть установлена Java;