Работа с технологией 1С:Fresh (облачной подсистемой 1С:Предприятие) вносит существенные коррективы в привычные процессы администрирования. Одной из наиболее острых проблем является резервное копирование. В архитектуре Fresh множество независимых организаций (областей данных) хранятся в одной физической базе данных СУБД. Это создает ситуацию, когда стандартный бэкап всей базы средствами SQL не позволяет оперативно восстановить данные только одного «арендатора» сервиса.
Рассмотрим подробнее, как устроена система резервного копирования в этой технологии, проанализируем ограничения монопольного режима и разберем наиболее эффективные стратегии для администраторов и владельцев частных облаков.
Для начала проанализируем ситуацию: во Fresh резервное копирование разделяется на два принципиально разных уровня. Понимание этого различия — ключ к решению проблемы автора темы.
data_dump.zip) можно использовать для переноса данных между сервисами или для создания локальной копии.Выясним причину, по которой прикладная выгрузка области часто требует завершения работы всех пользователей. Технически 1С должна гарантировать логическую целостность данных. Если в процессе выгрузки пользователь проведет документ, часть данных может попасть в архив в старом состоянии, а часть — в новом, что приведет к ошибкам при загрузке. Рассмотрим, как обойти это ограничение.
Для владельца сервиса (Private Cloud) оптимальным решением будет использование тестового контура или Standby-сервера. Проанализируем этот алгоритм:
монопольно.Менеджера сервиса.Таким образом, мы получаем актуальные снимки данных без прерывания работы основного сервиса. Если база достигает значительных размеров (например, 900 Гб), этот метод становится единственно возможным.
Разберем еще один эффективный метод, упомянутый участниками обсуждения, — использование технологии Автономного рабочего места. По сути, это реализация механизма распределенных информационных баз (РИБ) внутри Fresh. Посмотрим на этот процесс по шагам:
1С:Бухгалтерия) настраивается синхронизация с локальным компьютером..1сд), которая периодически обменивается данными с облаком.Этот способ позволяет пользователю иметь «горячую» копию данных под рукой, не дожидаясь действий администратора облака.
Для администратора собственного облачного сервиса важно настроить автоматизацию. В составе 1С:Fresh есть компонент Служба резервного копирования. Рассмотрим, как она упрощает жизнь:
Служба работает в фоновом режиме по расписанию. Она ставит задания на выгрузку областей в общую очередь. Если область данных в данный момент занята пользователем, система может либо пропустить ее, либо (в зависимости от настроек) принудительно завершить сеансы в ночное время. При использовании Менеджера сервиса администратор может настроить глубину хранения архивов: например, хранить 7 ежедневных копий и 4 недельных для каждой организации отдельно.
В завершение темы проанализируем вопрос массового обновления. Во Fresh обновление конфигурации (файла cf) происходит один раз для всей базы. Однако после этого данные в каждой области должны пройти процедуру миграции (обработку данных). Рассмотрим, как это реализовано в 1С:Enterprise:
// Пример логики, которую выполняет Менеджер сервиса
Для Каждого ОбластьИзСписка Из ОбластиДанных Цикл
// Ставим задачу в очередь на обновление данных
МенеджерЗаданий.ДобавитьЗадание("ОбновлениеДанныхОбласти", ОбластьИзСписка);
КонецЦикла;
Процесс обновления данных в 500 областях происходит асинхронно. Пользователи могут продолжать работать, а обновление данных для конкретной области запустится в момент их первого входа в систему после апдейта конфигурации. Это позволяет избежать длительных простоев всего сервиса.
Подведем итог: если вы являетесь владельцем сервиса и вам нужно восстановить одну область из 900-гигабайтной базы, не нужно восстанавливать всю базу «поверх» рабочей. Рекомендуется поднять бэкап СУБД на отдельном инстансе, выгрузить оттуда нужную область в формате .zip через Менеджер сервиса (используя обработку выгрузки) и загрузить этот архив в новую (пустую) область данных в рабочем контуре. Это позволит пользователю сравнить данные или продолжить работу, не затрагивая других арендаторов.