Снимок файловой системы

Поделись знанием:
(перенаправлено с «Снапшот»)
Перейти к: навигация, поиск

Снимок файловой системы или снапшот (от англ. SnapShot, [мгновенный снимок]) — моментальный снимок, копия файлов и директорий файловой системы на определённый момент времени.





Описание

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

Одним из методов безопасного создания бэкапа является запрещение записи в данные, которые подлежат резервному копированию, на время создания резервной копии. Ещё одним из методов является остановка всех приложений, которые могут изменять эти данные, или блокировка этих приложений форсированным включением режима только для чтения средствами интерфейса программирования приложений (API) операционной системы (ОС). Эти методы используются в системах низкой доступности (домашние компьютеры, сервера небольших рабочих групп, для которых регулярная недоступность (downtime) позволительна). В системах высокой доступности 24/7 эти методы применять нельзя, так как это может повлечь отказ в обслуживании сервисов.

Для избежания недоступности (downtime), системы высокой доступности могут вместо прямого резервного копирования сначала создать снапшот-ную, только для чтения, копию информации, замороженной в определенный момент времени. А затем, позволив приложениям продолжить обновлять данные, создавать бэкап. Большинство реализаций снапшотов эффективны, они создают снапшот за O(1). Другими словами, время и количество операций ввода-вывода необходимое для создания снапшота не увеличивается с ростом объёма данных, в то время, как те же параметры для создания прямого бэкапа пропорциональны размеру сохраняемых данных.

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

Реализация

Управление томами

Некоторые операционные системы из семейства UNIX, например, HP-UX, а также Linux обладают менеджером логического раздела, в котором реализована поддержка снапшотов. Эта реализация копии-на-записи на целых блочных устройствах путём копирования измененных блоков, до того, как они будут перезаписаны, в другое место, сохраняет целостность снапшота на блочном устройстве. Файловые системы на этом снапшоте могут быть позднее подключены только в режиме чтения. Снапшоты блочного уровня почти всегда менее эффективно используют место, чем снапшоты в файловых системах которые их поддерживают.

Файловые системы

Некоторые файловые системы, такие как WAFL, fossil для Plan 9 или ODS-5, внутренне отслеживают старые версии файлов и делают снапшоты доступными через специальное пространство имен. Другие, например UFS2, предоставляют для операционной системы API для доступа к своей истории файлов. В NTFS, доступ к снапшотам предоставляется через Volume Shadow Copy (VSS) в Windows XP и Windows 2003, и через Shadow Copy в Windows Vista. Снапшоты также доступны в Novell Storage Services (NSS) - файловой системе для Netware, - начиная с версии 4.11, и более новых на Linux-платформах в продуктах Open Enterprise Server (OES).

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

В базах данных

Спецификация SQL определяет четыре уровня изоляции транзакций. На самом высоком уровне — сериализационном, снапшот создается при старте каждой транзакции. Утилиты для бэкапа большинства популярных SQL баз данных используют эту технологию для создания самосогласованного образа таблицы данных.

Другие приложения

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

См. также

Напишите отзыв о статье "Снимок файловой системы"

Ссылки

  • Михаил Митрошин. [www.storagenews.ru/25/CA_snap-tech.pdf Проблематика, Что такое снапшот?/ BrightStor ARCserve Backup - снапшотные технологии] (рус.). [www.storagenews.ru Storage News] (№ 4 (25) 2005). Проверено 3 августа 2010. [www.webcitation.org/66AkbnnEt Архивировано из первоисточника 15 марта 2012].
  • Neeta Garimella. [www-128.ibm.com/developerworks/tivoli/library/t-snaptsm1/index.html Understanding and exploiting snapshot technology for data protection, Part 1: Snapshot technology overview]. IBM (26.04.2006). Проверено 3 августа 2010. [www.webcitation.org/66AkcLQrl Архивировано из первоисточника 15 марта 2012].
  • Mike Harwood. [www.enterprisestorageforum.com/management/features/article.php/3082691 Storage Basics: Backup Strategies]. Storage (24.09.2003). Проверено 3 августа 2010. [www.webcitation.org/66AkdGUWE Архивировано из первоисточника 15 марта 2012].

Отрывок, характеризующий Снимок файловой системы

В третьих, бессмысленно было терять свои войска для уничтожения французских армий, уничтожавшихся без внешних причин в такой прогрессии, что без всякого загораживания пути они не могли перевести через границу больше того, что они перевели в декабре месяце, то есть одну сотую всего войска.
В четвертых, бессмысленно было желание взять в плен императора, королей, герцогов – людей, плен которых в высшей степени затруднил бы действия русских, как то признавали самые искусные дипломаты того времени (J. Maistre и другие). Еще бессмысленнее было желание взять корпуса французов, когда свои войска растаяли наполовину до Красного, а к корпусам пленных надо было отделять дивизии конвоя, и когда свои солдаты не всегда получали полный провиант и забранные уже пленные мерли с голода.
Весь глубокомысленный план о том, чтобы отрезать и поймать Наполеона с армией, был подобен тому плану огородника, который, выгоняя из огорода потоптавшую его гряды скотину, забежал бы к воротам и стал бы по голове бить эту скотину. Одно, что можно бы было сказать в оправдание огородника, было бы то, что он очень рассердился. Но это нельзя было даже сказать про составителей проекта, потому что не они пострадали от потоптанных гряд.
Но, кроме того, что отрезывание Наполеона с армией было бессмысленно, оно было невозможно.
Невозможно это было, во первых, потому что, так как из опыта видно, что движение колонн на пяти верстах в одном сражении никогда не совпадает с планами, то вероятность того, чтобы Чичагов, Кутузов и Витгенштейн сошлись вовремя в назначенное место, была столь ничтожна, что она равнялась невозможности, как то и думал Кутузов, еще при получении плана сказавший, что диверсии на большие расстояния не приносят желаемых результатов.
Во вторых, невозможно было потому, что, для того чтобы парализировать ту силу инерции, с которой двигалось назад войско Наполеона, надо было без сравнения большие войска, чем те, которые имели русские.
В третьих, невозможно это было потому, что военное слово отрезать не имеет никакого смысла. Отрезать можно кусок хлеба, но не армию. Отрезать армию – перегородить ей дорогу – никак нельзя, ибо места кругом всегда много, где можно обойти, и есть ночь, во время которой ничего не видно, в чем могли бы убедиться военные ученые хоть из примеров Красного и Березины. Взять же в плен никак нельзя без того, чтобы тот, кого берут в плен, на это не согласился, как нельзя поймать ласточку, хотя и можно взять ее, когда она сядет на руку. Взять в плен можно того, кто сдается, как немцы, по правилам стратегии и тактики. Но французские войска совершенно справедливо не находили этого удобным, так как одинаковая голодная и холодная смерть ожидала их на бегстве и в плену.
В четвертых же, и главное, это было невозможно потому, что никогда, с тех пор как существует мир, не было войны при тех страшных условиях, при которых она происходила в 1812 году, и русские войска в преследовании французов напрягли все свои силы и не могли сделать большего, не уничтожившись сами.
В движении русской армии от Тарутина до Красного выбыло пятьдесят тысяч больными и отсталыми, то есть число, равное населению большого губернского города. Половина людей выбыла из армии без сражений.
И об этом то периоде кампании, когда войска без сапог и шуб, с неполным провиантом, без водки, по месяцам ночуют в снегу и при пятнадцати градусах мороза; когда дня только семь и восемь часов, а остальное ночь, во время которой не может быть влияния дисциплины; когда, не так как в сраженье, на несколько часов только люди вводятся в область смерти, где уже нет дисциплины, а когда люди по месяцам живут, всякую минуту борясь с смертью от голода и холода; когда в месяц погибает половина армии, – об этом то периоде кампании нам рассказывают историки, как Милорадович должен был сделать фланговый марш туда то, а Тормасов туда то и как Чичагов должен был передвинуться туда то (передвинуться выше колена в снегу), и как тот опрокинул и отрезал, и т. д., и т. д.
Русские, умиравшие наполовину, сделали все, что можно сделать и должно было сделать для достижения достойной народа цели, и не виноваты в том, что другие русские люди, сидевшие в теплых комнатах, предполагали сделать то, что было невозможно.
Все это странное, непонятное теперь противоречие факта с описанием истории происходит только оттого, что историки, писавшие об этом событии, писали историю прекрасных чувств и слов разных генералов, а не историю событий.
Для них кажутся очень занимательны слова Милорадовича, награды, которые получил тот и этот генерал, и их предположения; а вопрос о тех пятидесяти тысячах, которые остались по госпиталям и могилам, даже не интересует их, потому что не подлежит их изучению.
А между тем стоит только отвернуться от изучения рапортов и генеральных планов, а вникнуть в движение тех сотен тысяч людей, принимавших прямое, непосредственное участие в событии, и все, казавшиеся прежде неразрешимыми, вопросы вдруг с необыкновенной легкостью и простотой получают несомненное разрешение.
Цель отрезывания Наполеона с армией никогда не существовала, кроме как в воображении десятка людей. Она не могла существовать, потому что она была бессмысленна, и достижение ее было невозможно.
Цель народа была одна: очистить свою землю от нашествия. Цель эта достигалась, во первых, сама собою, так как французы бежали, и потому следовало только не останавливать это движение. Во вторых, цель эта достигалась действиями народной войны, уничтожавшей французов, и, в третьих, тем, что большая русская армия шла следом за французами, готовая употребить силу в случае остановки движения французов.