Поделиться через


Содержимое документа метаданных записи

Документ метаданных записи содержит три набора данных: сведения об идентификации и классификации записи, спецификации уровня записи и данные компонентов.

Сведения об идентификации модуля записи

Сведения об идентификации и классификации модуля записи включают следующее:

За исключением экземпляра записи, который является уникальным и создается системой при инициализации объекта CVssWriter , все эти значения задаются модулем записи при вызове CVssWriter::Initialize и доступны инициатору запроса путем вызова IVssExamineWriterMetadata::GetIdentity.

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

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

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

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

Спецификация Writer-Level

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

Модуль записи всегда должен указывать методы восстановления.

При необходимости можно указать следующее:

Списки файлов включения и исключения содержат сведения о файлах, помимо сведений в компонентах, и их спецификация заменяет спецификацию компонента.

Спецификация метода восстановления

Метод восстановления задается в документе метаданных записи методом IVssCreateWriterMetadata::SetRestoreMethod и извлекается инициатором запроса с помощью IVssExamineWriterMetadata::GetRestoreMethod.

При задании метода восстановления модуль записи указывает предпочтительный способ восстановления файлов, также известный как исходный целевой объект восстановления, для всех файлов, управляемых модулем записи. Например, метод восстановления указывает, разрешено ли перезаписывать файлы, находящиеся на диске, всем файлам, управляемым модулем записи. (Дополнительные сведения см. в разделе Конфигурации восстановления VSS и VSS_RESTOREMETHOD_ENUM .)

Спецификация исключения списка файлов

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

Например, компонент может иметь набор файлов , содержащий спецификацию файла c:\Database\*.*. Хотя это удобное определение, иногда могут создаваться временные файлы (возможно, в формате *.tmp), и модуль записи всегда хочет предотвратить их резервное копирование.

В этом случае модуль записи добавляет *.tmp в список исключений с помощью IVssCreateWriterMetadata::AddExcludeFiles. Эта спецификация может быть рекурсивной.

Инициатор запроса запрашивает эти сведения с помощью IVssExamineWriterMetadata::GetExcludeFile.

Список исключенных файлов имеет приоритет над списками файлов компонентов.

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

Спецификация альтернативных сопоставлений расположений

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

Эти сведения добавляются в виде строки символов, завершающейся null, с помощью IVssCreateWriterMetadata::AddAlternateLocationMapping и извлекаются как объект IVssWMFiledesc методом IVssExamineWriterMetadata::GetAlternateLocationMapping.

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

Дополнительные сведения см. в разделе Расположения резервного копирования и восстановления по умолчанию.

Сведения о Component-Level

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

Записи добавляют компоненты с помощью IVssCreateWriterMetadata::AddComponent, указав следующие сведения о компоненте:

  • Тип
  • Имя
  • Логический путь (при наличии)
  • Поддерживаемая функция
  • Возможность выбора
  • Метаданные, используемые модулем записи во время восстановления
  • Отображение сведений
  • Сведения об уведомлениях

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

Файлы добавляются в данный компонент с помощью IVssCreateWriterMetadata::AddFilesToFileGroup, IVssCreateWriterMetadata::AddDatabaseFiles или IVssCreateWriterMetadata::AddDatabaseLogFiles. (См. раздел Добавление файлов в компоненты.)

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

Записи также могут указать альтернативный путь для резервного копирования, который не следует путать с альтернативными сопоставлениями расположения, упомянутыми ранее. Этот альтернативный путь указывает расположение не по умолчанию, из которого копируются файлы при резервном копировании тома.

Сведения об определенном компоненте в документе метаданных модуля записи можно получить через интерфейс IVssWMComponent , возвращаемый IVssExamineWriterMetadata::GetComponent.

Файлы и пути возвращаются в IVssWMComponent в виде объектов IVssWMFiledesc .

Сведения о компонентах модуля записи подробно рассматриваются в разделе Определение компонентов по модулям записи.