Жизненный цикл документа метаданных модуля записи
В ответ на событие Identify каждый модуль записи, присутствующий в системе, создает собственный документ метаданных модуля записи с помощью IVssCreateWriterMetadata. Событие Identify обычно создается инициатором запроса, вызывающим IVssBackupComponents::GatherWriterMetadata.
При создании документа метаданных модуля записи с помощью интерфейса IVssCreateWriterMetadata или инициализации модуля записи (CVssWriter::Initialize) модуль записи должен явно указать следующее:
- Метод восстановления
- Имя модуля записи
- Идентификатор класса модуля записи
- Использование данных (см . VSS_USAGE_TYPE)
- Тип источника даты (см . VSS_SOURCE_TYPE)
Кроме того, он также может указать следующее:
- Компоненты (которые могут содержать или не могут содержать наборы файлов)
- Добавление альтернативных сопоставлений
- Исключить списки файлов
Общие сведения о создании документа метаданных записи см. в разделе Действия записи во время инициализации резервного копирования.
Инициаторы запроса обычно используют один из двух методов для получения доступа к метаданным модуля записи:
- Во время большинства операций резервного копирования инициатор запроса использует IVssBackupComponents::GetWriterMetadata для получения экземпляра интерфейса IVssExamineWriterMetadata , чтобы разрешить доступ к метаданным выполняющегося модуля записи.
- Для операций восстановления или резервных копий с использованием импортированных теневых копий (дополнительные сведения об импорте теневых копий см. в разделе Импорт переносимых теневых копий) запрашивающий объект извлекает XML-документ, содержащий метаданные, и использует CreateVssExamineWriterMetadata для получения интерфейса IVssExamineWriterMetadata , который используется для чтения метаданных восстановления.
Документы метаданных модуля записи позволяют инициатору запроса выполнить резервное копирование, чтобы узнать о текущих выполняющихся модулях записи на этапе обнаружения резервной копии.
Для тех авторов, которые были выбраны для участия в резервном копировании, инициатор запроса импортирует много, но не всю информацию из документа метаданных модуля записи в собственный документ компонентов резервной копии на этапе обнаружения резервной копии.
Однако только документы метаданных модуля записи, а не документы компонентов резервного копирования содержат спецификации файла и пути.
Дополнительные сведения о том, как выполняется этап обнаружения операции резервного копирования, см. в разделе Обзор этапа обнаружения резервных копий.
Кроме того, только явно включенные компоненты хранятся в документе Компоненты резервного копирования во время операции резервного копирования. Сведения о неявно включенных компонентах не включаются в документ компонентов резервного копирования во время операции резервного копирования и должны быть интерполированы с помощью сведений о явно включенных компонентах и доступных документах метаданных модуля записи.
Неявно включенные компоненты по-прежнему могут быть выбраны для восстановления , и их может потребоваться явно включить в документ компонентов резервного копирования во время восстановления. В этом случае, точно так же, как добавление компонента во время операции резервного копирования требует доступа к документу метаданных модуля записи компонента (полученному из модуля записи), инициатору запроса потребуется доступ к копии документов метаданных модуля записи, хранящихся во время резервного копирования.
Таким образом, единственный способ получить всю информацию обо всех файлах и компонентах, участвующих в резервном копировании или восстановлении, — сохранить каждый документ метаданных модуля записи для каждого модуля записи, участвующего в резервной копии, вместе с документом компонентов резервной копии. (Дополнительные сведения см. в разделе Обзор фактического восстановления файлов.)