Backup и Snapshot: отличия и применение

На всякий случай сразу дадим этим терминам перевод: «backup» — резервная копия, «snapshot» — снимок, фотография.

Цифровые данные легко создавать, обрабатывать, хранить, использовать. Но… и потерять их можно также легко. Поэтому с самого появления компьютерной техники возникла задача сохранения данных, в том числе с помощью их запасных копий.

Однако, когда речь заходит о резервном копировании, всегда нужно уточнять, что под ним понимается. Ведь даже запись какого-то файла на флэшку в самом простом случае тоже является резервной копией.

Копировать можно:

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

Соответственно, полученные копии при необходимости обеспечат восстановление: файлов, данных, операционной системы или дисков.

Резервная копия

Обычно копирование данных выполняется со следующими целями:

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

Данные в компьютере постоянно изменяются: какие-то быстрее, какие-то медленнее. Их backup начинает устаревать сразу после своего изготовления.

Копия данных

Необходимый уровень актуальности сохраняемых данных каждый владелец операционной системы должен определить для себя сам. Резервное копирование, как любое действие, требует определённых ресурсов: вычислительной мощности, сетевого трафика, дискового пространства и т. д. Частый backup обеспечит большую актуальность сохранённых данных, но и потребует больших ресурсов на их обработку и хранение.

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

Так же должно быть понятным, что вероятность сбоя в цепочке backup’ов тем выше, чем она длиннее. С учётом этого, нужно периодически делать полные копии, от которых можно начинать новые разностные цепочки.

backup

В каждый момент времени у вас должна быть последовательность из нескольких свежих полных копий тех данных, которые вы хотите сохранить.

цепочка backup

В облаке 1cloud, если пользователь включил для своего сервера опцию «Резервное копирование», для этого сервера будет поддерживаться актуальная последовательность из семи ежедневных полных копий всех его дисков.

Snapshot

Во всех рассмотренных случаях состояние компьютера не будет восстановлено абсолютно полностью, даже после восстановления из копий операционной системы или всего диска.

Причин тому может быть много: блокировка некоторых файлов операционной системой и приложениями; значительная продолжительность копирования, во время которой могут измениться файлы, связанные с уже скопированными; ….

При этом, бывают ситуации, когда требуется быстро и полностью вернуть компьютер в то состояние, в котором он находился в определённый момент времени, например, до обновления операционной системы или установки нового программного обеспечения.

Такую возможность даёт snapshot, снимок. При наличии снимка можно быстро и полностью (!) «откатить» компьютер в то состояние, в котором он пребывал в момент снимка.

Это бывает очень и очень привлекательным и полезным!

Но для правильного и эффективного использования snapshot’ов важно уяснить их суть. Она — в какой-то степени… противоположна той, которую можно ожидать по названию.

В момент создания снимка виртуальной машины прекращается запись на её диски, а все последующие дисковые операции производятся в отдельном файле.

Далее, чтобы получить какие-то данные с диска, нужно сначала прочитать «замороженный» диск, а затем учесть все связанные дисковые операции, записанные в дополнительный файл. При записи новых или изменённых данных на диск читать «замороженный» диск не требуется, достаточно записать эти данные в дополнительный файл.

Если возникнет необходимость вернуть машину в исходное состояние, достаточно удалить файл с изменениями и продолжить использовать «замороженные» диски в прежнем режиме.

Если возможность отката к предыдущему состоянию уже не будет требоваться, накопленные изменения дисков нужно внести на «замороженные» диски и продолжить их использовать с новыми данными в обычном режиме.

snapshot

Snapshot можно сделать как выключенной машины, так и работающей.

Снимки могут быть разного типа, например, они могут включать в себя состояние оперативной памяти.

Снимки позволяют изменять настройки и устанавливать обновления операционных систем и приложений с возможностью быстрого и безболезненного отката к исходному состоянию.

Впрочем, у снимков есть и недостатки. Если сервер выполняет много дисковых операций, размер файлов с изменениями может быстро увеличиваться и существенно превысить размер «замороженных» дисков. Одновременно, будут замедляться дисковые операции, ведь при каждой из них придётся обрабатывать всё больший и больший объём данных.

Кроме того, действующий снимок создаёт определённые ограничения в работе виртуальной инфраструктуры.

По указанным причинам snapshot («заморозку системы») не следует делать слишком надолго. Сразу после проверки последствий изменений системы нужно определиться, сохранить ли эти изменения или откатить систему в исходное состояние.

В облаке 1cloud предусмотрены полные снимки виртуальных серверов, включающие как диски, так и оперативную память. Стоимость хранения снимков: 5 рублей за 1 гигабайт в месяц. Максимальный срок хранения одного снимка: 7 дней.

Сравнение снимка и резервной копии

Цели Snapshot Backup
Эксперименты с машиной с возможностью её быстрого отката в исходное состояние Да Нет
Восстановление работоспособности компьютера в случае сбоя (аварии) Нет Да
Сохранение данных на случай их утраты или повреждения в основном хранилище Нет Да
Долгосрочное архивирование редко используемых данных Нет Да

Очень важно чётко понимать, что:
snapshot не есть backup, а backup не есть snapshot.

P. S. О чём ещё мы пишем в блоге 1cloud