Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Записанное состояние компьютерной системы хранения на определенный момент времени.
Recorded state of a computer storage system at a particular point in time
В компьютерных системах снимок — это состояние системы в определенный момент времени. Термин был придуман по аналогии с фотографией.
In computer systems, a snapshot is the state of a system at a particular point in time. The term was coined as an analogy to that in photography.
Обоснование
Полная резервная копия большого набора данных может занять продолжительное время. В многозадачных или многопользовательских системах во время резервного копирования могут происходить записи в эти данные. Это не позволяет создать атомарную резервную копию и приводит к несогласованности версий, что может вызвать повреждение данных. Например, если пользователь переместит файл в каталог, резервная копия которого уже была создана, этот файл полностью отсутствует на носителе резервной копии, поскольку операция резервного копирования завершилась до добавления файла. Несогласованность версий также может привести к повреждению файлов, размер или содержимое которых изменяются в процессе чтения. Один из способов безопасного резервного копирования активных данных — временно запретить доступ на запись к данным во время резервного копирования, либо остановив приложения, обращающиеся к данным, либо используя API блокировки, предоставляемый операционной системой, для обеспечения эксклюзивного доступа на чтение. Это допустимо для систем с невысокой доступностью (на настольных компьютерах и небольших рабочих серверах, где допустимы регулярные простои). Однако системы с высокой доступностью, работающие круглосуточно и без выходных, не могут допускать перерывов в обслуживании. Чтобы избежать простоев, системы с высокой доступностью могут выполнять резервное копирование на основе снимка — копии набора данных, замороженной в определенный момент времени и доступной только для чтения, — позволяя приложениям продолжать запись данных. Большинство реализаций снимков эффективны и могут создавать снимки за время O(1). Другими словами, время и операции ввода-вывода, необходимые для создания снимка, не увеличиваются с размером набора данных; в отличие от этого, время и операции ввода-вывода, необходимые для прямого резервного копирования, пропорциональны размеру набора данных. В некоторых системах после создания первоначального снимка последующие снимки копируют только измененные данные и используют систему указателей для ссылки на первоначальный снимок. Этот метод создания снимков на основе указателей потребляет меньше дискового пространства, чем при повторном клонировании набора данных.
A full backup of a large data set may take a long time to complete. On multi tasking or multi user systems, there may be writes to that data while it is being backed up. This prevents the backup from being atomic and introduces a version skew that may result in data corruption. For example, if a user moves a file into a directory that has already been backed up, then that file would be completely missing on the backup media, since the backup operation had already taken place before the addition of the file. Version skew may also cause corruption with files which change their size or contents underfoot while being read. One approach to safely backing up live data is to temporarily disable write access to data during the backup, either by stopping the accessing applications or by using the locking API provided by the operating system to enforce exclusive read access. This is tolerable for low availability systems (on desktop computers and small workgroup servers, on which regular downtime is acceptable). High availability 24/7 systems, however, cannot bear service stoppages. To avoid downtime, high availability systems may instead perform the backup on a snapshot—a read only copy of the data set frozen at a point in time—and allow applications to continue writing to their data. Most snapshot implementations are efficient and can create snapshots in O(1). In other words, the time and I/O needed to create the snapshot does not increase with the size of the data set; by contrast, the time and I/O required for a direct backup is proportional to the size of the data set. In some systems once the initial snapshot is taken of a data set, subsequent snapshots copy the changed data only, and use a system of pointers to reference the initial snapshot. This method of pointer based snapshots consumes less disk capacity than if the data set was repeatedly cloned.
Управляющие объемом
Некоторые системы Unix имеют логические менеджеры томов, поддерживающие создание снимков. Они реализуют копирование при записи на уровне целых блочных устройств, копируя измененные блоки непосредственно перед их перезаписью в "родительском" томе в другое хранилище, тем самым сохраняя согласованное состояние блочного устройства в прошлом. Файловые системы, размещенные на таких снимках, могут быть смонтированы позднее как если бы они находились на носителе, доступном только для чтения. Некоторые менеджеры томов также позволяют создавать записываемые снимки, расширяя подход копирования при записи путем отделения любых измененных блоков в снимке от их "родительских" блоков в исходном томе. Такую схему также можно описать как выполнение дополнительных операций копирования при записи, инициируемых операциями записи в снимки. В Linux, Logical Volume Manager (LVM) позволяет создавать как снимки только для чтения, так и снимки с возможностью записи. Записываемые снимки были введены с версией LVM 2 (LVM2).
Some Unix systems have snapshot capable logical volume managers. These implement copy on write on entire block devices by copying changed blocksjust before they are to be overwritten within "parent" volumesto other storage, thus preserving a self consistent past image of the block device. Filesystems on such snapshot images can later be mounted as if they were on a read only media. Some volume managers also allow creation of writable snapshots, extending the copy on write approach by disassociating any blocks modified within the snapshot from their "parent" blocks in the original volume. Such a scheme could be also described as performing additional copy on write operations triggered by the writes to snapshots. On Linux, Logical Volume Manager (LVM) allows creation of both read only and read write snapshots. Writable snapshots were introduced with the LVM version 2 (LVM2).
Файловые системы
Некоторые файловые системы, такие как WAFL, fossil для Plan 9 от Bell Labs и ODS 5, внутренне отслеживают старые версии файлов и предоставляют снимки через специальное пространство имен. Другие, например UFS2, предоставляют API операционной системы для доступа к истории файлов. В NTFS доступ к снимкам обеспечивается службой Volume Shadow Copy (VSS) в Windows XP и Windows Server 2003 и Shadow Copy в Windows Vista. Melio FS предоставляет снимки через тот же интерфейс VSS для совместно используемых хранилищ. Снимки также доступны в файловой системе NSS (Novell Storage Services) на NetWare, начиная с версии 4.11, и более недавно на платформах Linux в продукте Open Enterprise Server. Кластерная платформа хранения Isilon OneFS от EMC реализует единую масштабируемую файловую систему, поддерживающую снимки только для чтения на уровне файлов или каталогов. Любой файл или каталог в файловой системе может быть зафиксирован в виде снимка, и система динамически реализует копирование при записи или моментальный снимок, в зависимости от того, какой метод будет определен как оптимальный для системы. В Linux файловые системы Btrfs и OCFS2 поддерживают создание снимков (клонирование) отдельных файлов. Кроме того, Btrfs также поддерживает создание снимков подтомов. На AIX файловая система JFS2 также поддерживает снимки.
Some file systems, such as WAFL, fossil for Plan 9 from Bell Labs, and ODS 5, internally track old versions of files and make snapshots available through a special namespace. Others, like UFS2, provide an operating system API for accessing file histories. In NTFS, access to snapshots is provided by the Volume Shadow copying Service (VSS) in Windows XP and Windows Server 2003 and Shadow Copy in Windows Vista. Melio FS provides snapshots via the same VSS interface for shared storage. Snapshots have also been available in the NSS (Novell Storage Services) file system on NetWare since version 4.11, and more recently on Linux platforms in the Open Enterprise Server product. EMC's Isilon OneFS clustered storage platform implements a single scalable file system that supports read only snapshots at the file or directory level. Any file or directory within the file system can be snapshotted and the system will implement a copy on write or point in time snapshot dynamically based on which method is determined to be optimal for the system. On Linux, the Btrfs and OCFS2 file systems support creating snapshots (cloning) of individual files. Additionally, Btrfs also supports the creation of snapshots of subvolumes. On AIX, JFS2 also support snapshots.