Открыть сервис

Инкрементальное резервное копирование

Инкрементальное резервное копирование — это метод создания резервных копий данных, при котором на каждом последующем сеансе копируются только те файлы или блоки данных, которые были изменены или созданы с момента выполнения предыдущего резервного копирования (полного или инкрементального). Данный подход позволяет значительно сократить объём хранимых данных и время, необходимое для выполнения резервного копирования, по сравнению с полным копированием, но требует более сложной процедуры восстановления.

Принцип работы

Основой инкрементального резервного копирования является отслеживание изменений в файловой системе или на уровне блоков данных. Для этого используется атрибут архивирования (archive bit) в файловых системах Windows или журнал изменений (change journal) в NTFS, а также аналогичные механизмы в Unix-подобных системах (например, ctime или mtime). При первом запуске обычно выполняется полное резервное копирование всех выбранных данных. Все последующие сеансы являются инкрементальными: система анализирует, какие файлы или блоки были изменены с момента последнего копирования (независимо от его типа), и копирует только эти изменения.

Например, если полное копирование выполнено в понедельник, то во вторник будут скопированы только изменения, произошедшие с понедельника по вторник. В среду — только изменения со вторника по среду, и так далее. Каждое инкрементальное копирование зависит от предыдущего, образуя цепочку.

Отличия от других методов

Дифференциальное резервное копирование

В отличие от инкрементального, дифференциальное копирование каждый раз копирует все изменения, произошедшие с момента последнего полного копирования. Например, после полного копирования в понедельник, во вторник копируются изменения за понедельник-вторник, а в среду — все изменения за понедельник-среду. Дифференциальные копии накапливают объём, но для восстановления требуется только полная копия и последняя дифференциальная, что упрощает процесс.

Полное резервное копирование

Полное копирование создаёт копию всех выбранных данных целиком. Оно требует наибольшего времени и объёма хранилища, но обеспечивает максимальную простоту восстановления (требуется только одна копия). Инкрементальное копирование является более эффективным по ресурсам, но требует хранения всей цепочки копий (полной и всех последующих инкрементальных) для восстановления последнего состояния.

Преимущества и недостатки

Преимущества

  • Экономия дискового пространства: объём инкрементальных копий обычно значительно меньше полных, особенно при работе с редко изменяемыми данными.
  • Скорость выполнения: резервное копирование занимает меньше времени, так как копируются только изменения.
  • Снижение нагрузки на сеть: при удалённом резервировании трафик существенно сокращается.
  • Частота выполнения: возможность выполнять резервирование чаще (например, ежечасно) без значительного увеличения затрат ресурсов.

Недостатки

  • Сложность восстановления: для восстановления данных на определённый момент времени требуется последовательно применить все инкрементальные копии от последней полной до целевой точки. При повреждении любой копии в цепочке восстановление может стать невозможным.
  • Время восстановления: процесс восстановления дольше, чем при использовании полных или дифференциальных копий, особенно при длинных цепочках.
  • Зависимость от целостности: каждая инкрементальная копия зависит от предыдущей. Потеря одной копии делает невозможным восстановление всех последующих состояний.

Стратегии применения

Комбинированные схемы

На практике инкрементальное копирование редко используется в чистом виде. Чаще применяются гибридные стратегии:

  • Полное + инкрементальные: периодически (например, еженедельно) выполняется полное копирование, а между ними — ежедневные инкрементальные. Это ограничивает длину цепочки и снижает риски.
  • Синтетическое полное копирование: некоторые системы резервного копирования умеют создавать «синтетические» полные копии, объединяя предыдущую полную копию с последующими инкрементальными без повторного чтения исходных данных.

Уровни инкрементального копирования

В некоторых системах (например, в утилите tar в Unix) различают уровни инкрементального копирования. Уровень 0 — полная копия. Уровень 1 — копия изменений относительно уровня 0. Уровень 2 — копия изменений относительно уровня 1, и так далее. Это позволяет строить многоуровневые схемы.

Технологии реализации

Файловый уровень

Большинство традиционных систем резервного копирования (например, rsync, Bacula, Veeam Backup & Replication) работают на уровне файлов. Они отслеживают атрибуты файлов (дата изменения, размер) и копируют только изменившиеся файлы.

Блочный уровень

Современные системы (например, ZFS, btrfs, Windows Volume Shadow Copy) могут работать на уровне блоков данных. Они фиксируют, какие блоки диска были изменены, и копируют только их. Это позволяет создавать инкрементальные копии даже для больших файлов, где изменилась лишь небольшая часть.

Инкрементальное копирование виртуальных машин

В средах виртуализации (VMware vSphere, Microsoft Hyper-V) инкрементальное копирование может выполняться на уровне гипервизора, используя снапшоты (snapshots) виртуальных машин. Это позволяет создавать резервные копии целых виртуальных машин с минимальным влиянием на их работу.

Примеры программного обеспечения

  • Bacula — открытая система резервного копирования, поддерживающая инкрементальные и дифференциальные копии.
  • Veeam Backup & Replication — коммерческое решение для виртуальных сред, использующее инкрементальное копирование на блочном уровне.
  • rsync — утилита для Unix-подобных систем, позволяющая выполнять инкрементальное копирование файлов с помощью алгоритма передачи изменений.
  • Windows Server Backup — встроенное средство Windows Server, поддерживающее инкрементальное резервирование на уровне блоков.
  • Duplicatiоткрытое программное обеспечение для резервного копирования с поддержкой инкрементальных копий и шифрования.

Восстановление данных

Процесс восстановления из инкрементальных копий включает следующие шаги:

  1. Восстановление последней полной копии.
  2. Последовательное применение всех инкрементальных копий в хронологическом порядке до целевой точки восстановления.
  3. Проверка целостности данных.

Для ускорения восстановления некоторые системы используют технологию «мгновенного восстановления» (instant recovery), когда виртуальная машина запускается непосредственно с резервной копии, а данные восстанавливаются в фоновом режиме.

Применение в России

В Российской Федерации инкрементальное резервное копирование широко применяется в государственных и коммерческих организациях для обеспечения сохранности данных. В соответствии с требованиями Федерального закона № 152-ФЗ «О персональных данных» и приказами ФСТЭК России, системы резервного копирования должны обеспечивать возможность восстановления данных с заданной периодичностью. Инкрементальное копирование часто используется в составе комплексных систем защиты информации, сертифицированных ФСТЭК (например, «Кибер Бэкап», «Акронис» — программное обеспечение компании Acronis International GmbH, которая не является резидентом РФ, но продукт используется в России).

Источники

  1. Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных».
  2. Приказ ФСТЭК России от 18.02.2013 № 21 «Об утверждении Состава и содержания организационных и технических мер по обеспечению безопасности персональных данных при их обработке в информационных системах персональных данных».
  3. «Резервное копирование и восстановление данных» — учебное пособие, под ред. А. В. Лукацкого, 2020.
  4. Документация к программным продуктам Bacula, Veeam, rsync.
  5. ISO/IEC 27040:2015 «Information technology — Security techniques — Storage security».

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →