Freigeben über


Anforderungsrolle in inkrementellen und differenziellen Sicherungen in VSS

Um einen inkrementellen oder differenziellen Sicherungsvorgangs zu unterstützen, muss ein Anforderer Folgendes ausführen:

  1. Ermitteln Sie, welcher Grad der Writer-Unterstützung verfügbar ist (mit IVssBackupComponents::GetWriterMetadata, um Zugriff auf Informationen in Writer-Metadatendokumenten zu erhalten) – insbesondere bestimmen Sie, welches Sicherungsschema unterstützt wird (VSS_BACKUP_SCHEMA).
  2. Legen Sie einen geeigneten Sicherungsstatus fest.
  3. Abrufen von Datei- und Dateisatzebenenspezifikationen für eine inkrementelle oder differenzielle Sicherung.
  4. Führen Sie die Sicherung aus.

Ermittlung der inkrementellen und differenziellen Unterstützung und Konfiguration des Antragstellers

Ein Antragsteller muss Informationen zur Writer-Unterstützung abrufen, bevor Komponenten für die Aufnahme in eine inkrementelle oder differenzielle Sicherung ausgewählt oder der eigene Zustand festgelegt wird.

Ermitteln der Writer-Unterstützung

Ein Anforderer bestimmt, ob ein bestimmter Writer VSS-inkrementelle oder differenzielle Sicherungen unterstützt, indem die Sicherungsschemamaske des Autors mithilfe der IVssExamineWriterMetadata::GetBackupSchema-Methode abgerufen wird.

Die Sicherungsschemamaske eines Writers, der vsS-inkrementelle oder differenzielle Techniken unterstützt, enthält entweder VSS_BS_INCREMENTAL oder VSS_BS_DIFFERENTIALoder beides. Autoren können auch Einschränkungen für ihre Teilnahme an der VSS_BS_EXCLUSIVE_INCREMENTAL_DIFFERENTIAL Kennzeichnung angeben. (Weitere Informationen zu Sicherungsschemas finden Sie unter VSS_BACKUP_SCHEMA).

Einstellung des Sicherungsstatus des Antragstellers

Ein Anforderer gibt an, dass es sich bei einer Sicherung um eine inkrementelle oder differenzielle Sicherung handelt, indem ein Sicherungstyp entweder auf VSS_BT_INCREMENTAL oder VSS_BT_DIFFERENTIAL mithilfe der IVssBackupComponents::SetBackupState--Methode festgelegt wird, bevor ein PrepareForBackup--Ereignis generiert wird.

Die IVssBackupComponents::SetBackupState Methode wird auch verwendet, um anzugeben, ob der Antragsteller partielle Dateiunterstützungbereitstellt, die häufig zum Implementieren bestimmter inkrementeller Sicherungs- und Wiederherstellungsvorgänge verwendet wird.

Abrufen von Writer-Spezifikationen für inkrementelle und differenzielle Sicherungen

Die In jedem Writer-Metadatendokument enthaltenen Dateisicherungsinformationen (VSS_FILE_SPEC_BACKUP_TYPE) auf Dateisatzebene sind nach erfolgreicher Rückgabe von IVssBackupComponents::GatherWriterMetadatazur Untersuchung verfügbar.

Ein Writer kann jedoch unterschiedlichen Dateien hinzufügen oder partielle Dateiunterstützung anfordern, bis die erfolgreiche Behandlung des PostSnapshot--Ereignisses erfolgreich behandelt wird.

Die Spezifikation der differenzierten Datei- und Teildateiunterstützung kann den Sicherungstyp der Dateispezifikation überschreiben, sodass Die Antragsteller möglicherweise eine vollständige Analyse aller Writer-Spezifikationen zu inkrementellen und differenziellen Sicherungen zurückstellen möchten, bis nach der erfolgreichen Rückgabe von IVssBackupComponents::P repareForBackup.

Abrufen von Dateisicherungsspezifikationsinformationen

Die Informationen zur Dateisicherung auf Dateisatzebene (VSS_FILE_SPEC_BACKUP_TYPE) sind in jedem Writer-Metadatendokument enthalten und können unmittelbar nach der erfolgreichen Rückgabe von IVssBackupComponents::GatherWriterMetadatauntersucht werden.

Antragsteller müssen Dateisicherungsspezifikationsmasken (VSS_FILE_SPEC_BACKUP_TYPE) für jeden Dateisatz jeder Komponenten eines Writers abrufen, die in die inkrementelle oder differenzielle Sicherung einbezogen werden sollen, unabhängig davon, ob die Komponente explizit oder implizit eingeschlossen wurde.

Ein Anforderer kann bestimmen, welches Writer-Metadatendokument von Autoren mithilfe von IVssBackupComponents::GetWriterComponentsCount und IVssBackupComponents::GetWriterComponentsabgefragt werden muss. Die Instanz der IVssWriterComponentsExt Schnittstelle, die von IVssBackupComponents::GetWriterComponents über die IVssWriterComponentsExt::GetWriterInfo-Methode zurückgegeben wird.

Der Anforderer ruft Komponenteninformationen über Instanzen der IVssWMComponent Schnittstelle ab, die einer von einem bestimmten Writer verwalteten komponente mit IVssExamineWriterMetadata::GetComponent.

Die Informationen zu Dateisätzen, die von der Komponente verwaltet werden, die dem IVssWMComponent Schnittstelle entspricht, werden durch Aufrufe von IVssWMComponent::GetFile, IVssWMComponent::GetDatabaseFileoder IVssWMComponent::GetDatabaseLogFile (je nach Bedarf) abgerufen.

Diese Aufrufe können Instanzen der IVssWMFiledesc- Schnittstelle für die einzelnen Dateisätze einer Komponente zurückgeben.

Der Sicherungstyp für die Dateispezifikation eines Dateisatzes wird durch Aufrufen IVssWMFiledesc::GetBackupTypeMaskabgerufen.

Abrufen von Teildatei- und differenzierten Dateiinformationen

Ein Anforderer ruft partielle Datei- und differenzierte Dateiinformationen über die IVssComponent Schnittstelle ab.

Ein Antragsteller kann alle in einer Sicherung enthaltenen Autoren mithilfe IVssBackupComponents::GetWriterComponentsCount und IVssBackupComponents::GetWriterComponentsdurchlaufen.

Die Instanz einer IVssWriterComponentsExt Schnittstelle, die von IVssBackupComponents::GetWriterComponents zurückgegeben wird, bietet Zugriff auf alle Instanzen der IVssComponent-Schnittstelle. entsprechend der eines bestimmten Autors explizit Komponenten über die IVssWriterComponentsExt::GetComponent und IVssWriterComponentsExt::GetComponentCount Methoden enthalten.

Ein Antragsteller muss alle Instanzen von IVssComponent für alle Autoren durchlaufen, deren Schema die inkrementelle oder differenzielle Sicherung unterstützt, d. h. Autoren, deren Sicherungsschemamaske, wie von IVssExamineWriterMetadata::GetBackupSchemazurückgegeben wird, enthält VSS_BS_INCREMENTAL, wenn der Sicherungstyp VSS_BT_INCREMENTAList. oder VSS_BS_DIFFERENTIAL, wenn der Sicherungstyp VSS_BS_DIFFERENTIAList.

Partielle Dateiinformationen werden durch Aufrufen von IVssComponent::GetPartialFileCount und IVssComponent::GetPartialFile abgerufen (siehe Arbeiten mit Partiellen Dateien).

Für Autoren, die Sicherungsvorgänge auf der Grundlage der letzten Änderungsdaten einer Datei unterstützen (Autoren, deren Sicherungsschemamaske verwendet wird, wie von IVssExamineWriterMetadata::GetBackupSchemazurückgegeben, enthält VSS_BS_LAST_MODIFY), werden differenzierte Dateiinformationen durch Aufrufen IVssComponent::GetDifferencedFilesCount und IVssComponent::GetDifferencedFileabgerufen.

Beachten Sie, dass es sich bei unterschiedlichen Dateien um neue Dateien handeln kann, d. h. Dateien, die nicht Mitglied einer Datei sind, die sich derzeit im Writer-Metadatendokument eines bestimmten Autors befindet.

Anforderer sollten dateien nicht finden, die sowohl für teilweise Dateivorgänge als auch als differenzierte Dateien enthalten sind. Wenn ein Antragsteller einen solchen Umstand findet, sollte er einen Writer-Fehler zurückgeben und protokollieren.

Ein Antragsteller entscheidet sich möglicherweise trotzdem, mit der Sicherung der Dateien des problematischen Autors fortzufahren, sollte dies jedoch gemäß der In den differenzierten Dateiinformationen ermittelten Spezifikation tun.

Implementieren von inkrementellen oder differenziellen Sicherungen

Vor der Implementierung einer Sicherung sollten Anforderer Informationen darüber haben, welche Autoren eine inkrementelle oder differenzielle Sicherung unterstützen, alle angeforderten teilweisen Dateivorgänge, alle differenzierten Dateien und den Sicherungstyp der Dateispezifikation aller anderen Dateien.

nicht unterstützte Autoren

Autoren, deren Schema die inkrementelle oder differenzielle Sicherung nicht unterstützt (Autoren, deren Sicherungsschemamaske, wie von IVssExamineWriterMetadata::GetBackupSchemazurückgegeben wird, enthält VSS_BS_INCREMENTAL, wenn der Sicherungstyp VSS_BT_INCREMENTAL ist oder nicht VSS_BS_DIFFERENTIAL enthält, wenn der Sicherungstyp VSS_BS_DIFFERENTIAL) kann keine direkte Unterstützung für einen inkrementellen oder differenziellen Sicherungsvorgang bereitstellen.

Dies bedeutet nicht unbedingt, dass die Daten der Autoren nicht an einem inkrementellen oder differenziellen Sicherungsvorgang beteiligt sind. Die Entscheidung, was zu tun ist, liegt jedoch im Ermessen des Antragstellers. Der Antragsteller kann eine der folgenden Aktionen ausführen:

  • Sichern Sie keine Dateien, die zu den nicht unterstützten Autoren gehören (geben Sie dies dem Benutzer eindeutig an)
  • Sichern aller Dateien von nicht unterstützten Autoren
  • Führen Sie eine inkrementelle Sicherung mit Dateisystemdaten und den eigenen Verlaufsprotokollen des Antragstellers aus.

Die letzte Alternative sollte mit großer Sorgfalt verwendet werden, und nur, wenn der Antragsteller versteht, ob die beteiligten Autoren die inkrementelle oder differenzielle Sicherung und Wiederherstellung von Daten unterstützen können, die vom VSS-Mechanismus unabhängig sind.

Unterstützende Autoren

Ein Anforderer muss alle differenzierten Dateien eines Writersverarbeiten, dann alle partiellen Datei- Anforderungen verarbeiten und dann die verbleibenden Dateien entsprechend dem Sicherungstyp der Dateispezifikation sichern (VSS_FILE_SPEC_BACKUP_TYPE).

  1. Sichern von unterschiedlichen Dateien:

    Für Autoren, die Sicherungsvorgänge auf der Grundlage der letzten Änderungsdaten unterstützen (Autoren, deren Sicherungsschemamaske, wie von IVssExamineWriterMetadata::GetBackupSchemazurückgegeben wird, VSS_BS_LAST_MODIFYverwendet ein Anforderer die Pfad-, Dateispezifikations- und Rekursionskennzeichnungsinformationen, die von IVssComponent::GetDifferencedFile zurückgegeben werden, um eine Liste von Dateien als Kandidaten für die inkrementelle Sicherung oder Wiederherstellung zu generieren.

    IVssComponent::GetDifferencedFile kann auch einen Zeitpunkt der letzten Änderung zurückgeben (ausgedrückt als FILETIME--Struktur).

    Wenn die letzte Änderungszeit des Writers nicht null ist, verwendet der Antragsteller sie als Grundlage (anstelle von Dateisysteminformationen oder den eigenen gespeicherten Daten des Antragstellers), um zu bestimmen, ob die Datei in die inkrementelle oder differenzielle Sicherung einbezogen werden soll.

    Beispiel: Wenn die letzte Änderungszeit einer Datei wie vom Writer zurückgegeben wurde:

    • Nach der letzten vollständigen Sicherung sollte die Datei sowohl inkrementelle als auch in differenzielle Sicherungen eingeschlossen werden.
    • Nach der letzten vollständigen Sicherung, aber vor der letzten inkrementellen Sicherung sollte die Datei inkrementelle Sicherungsvorgänge, aber keine differenziellen Sicherungen enthalten sein.

    Wenn die letzte Änderungszeit des Writer null ist, muss der Antragsteller Dateisysteminformationen und seine eigenen gespeicherten Daten verwenden, um die Änderungszeit der differenzierten Datei zu bestimmen.

  2. Verwendung partieller Dateivorgänge:

    Wenn ein Writer angefordert hat, dass eine Datei mit einem Teildateivorgang gesichert wird, verwendet der Antragsteller die Dateioffsetinformationen, um die angegebenen Dateisegmente auf Sicherungsmedien zu speichern. (Weitere Informationen zu teilweisen Dateivorgängen finden Sie unter Arbeiten mit partiellen Dateien).

    Wie oben erwähnt, sollte ein Writer keine Datei als differenzierte Datei und als Teilnehmer eines partiellen Dateivorgangs festlegen. Wenn ein Antragsteller einen solchen Umstand findet, sollte er einen Writer-Fehler zurückgeben und protokollieren.

    Ein Antragsteller entscheidet sich möglicherweise trotzdem, mit der Sicherung der Dateien des problematischen Autors fortzufahren, sollte dies jedoch gemäß der In den differenzierten Dateiinformationen ermittelten Spezifikation tun.

  3. Verwenden des Sicherungstyps "Dateispezifikation":

    Nachdem alle unterschiedlichen Dateien und Teilweisen Dateivorgänge verarbeitet wurden, verarbeitet der Antragsteller nun alle verbleibenden Dateien in seinem Sicherungssatz basierend auf dem Sicherungstyp der Dateispezifikation (VSS_FILE_SPEC_BACKUP_TYPE).

    Es gibt drei "backup required"-Werte der VSS_FILE_SPEC_BACKUP_TYPE Enumeration, die sich auf differenzielle und inkrementelle Sicherungen auswirken:

    • VSS_FSBT_ALL_BACKUP_REQUIRED
    • VSS_FSBT_INCREMENTAL_BACKUP_REQUIRED
    • VSS_FSBT_DIFFERENTIAL_BACKUP_REQUIRED

    Es gibt drei Werte für "Schattenkopie erforderlich":

    • VSS_FSBT_ALL_SNAPSHOT_REQUIRED
    • VSS_FSBT_INCREMENTAL_SNAPSHOT_REQUIRED
    • VSS_FSBT_DIFFERENTIAL_SNAPSHOT_REQUIRED

    File sets tagged with a file specification backup type of "shadow copy required" indicate that a requester needs to copy data from a shadow copy when perform INCREMENTAL, DIFFERENTIAL, or ALL (which includes both incremental and differential operations) backup operations.

    Das Flag "Sicherung erforderlich", das auf INKREMENTELLE, DIFFERENZIELLE oder ALLE Sicherungsvorgänge angewendet wird, gibt an, dass der Writer erwartet, dass eine Kopie der aktuellen Version des Dateisatzes nach der Wiederherstellung eines Sicherungsvorgangs verfügbar ist. Dies bedeutet in der Regel, dass ein Anforderer, wenn ein Dateisatz mit "Sicherung erforderlich" markiert ist, alle Elemente während einer inkrementellen oder differenziellen Sicherung auf Sicherungsmedien kopiert, unabhängig davon, wann die Sicherung oder Änderung zuletzt erfolgt ist.

    Standardmäßig werden Dateisätze zu Komponenten mit einem Sicherungstyp der Dateispezifikation von VSS_FSBT_ALL_BACKUP_REQUIRED | VSS_FSBT_ALL_SNAPSHOT_REQUIRED. Daher müssen Antragsteller, sofern ein Writer den Sicherungstyp der Dateispezifikation nicht explizit festlegt, diese Dateien kopieren, die nicht von teilweisen Dateivorgängen verarbeitet werden, oder bestimmte differenzierte Dateien in den meisten Dateisätzen werden in der Regel vollständig auf Sicherungsmedien kopiert.

Sicherungsstempel

Autoren, die Sicherungsstempel (VSS_BS_TIMESTAMP) unterstützen, können auswählen, dass Sicherungsstempelinformationen generiert werden, die verwendet werden sollen, um zukünftige inkrementelle und differenzielle Sicherungs- und Wiederherstellungsvorgänge zu unterstützen.

Das Format und die In Zeichenfolgen enthaltenen Informationen, die Sicherungsstempelinformationen enthalten, sind privat für den Writer, der sie generiert; der Antragsteller weiß nicht, wie diese Informationen verarbeitet werden.

Unterstützende Autoren speichern den Sicherungsstempel im Sicherungskomponentendokument als Zeichenfolge mithilfe der IVssComponent::SetBackupStamp-Methode.

Die Rolle des Antragstellers beim Behandeln von Sicherungsstempelinformationen ist (sofern vorhanden), um sie dem Writer zur Verfügung zu stellen, indem er IVssBackupComponents::SetPreviousBackupStamp in einem zukünftigen Sicherungs- oder Wiederherstellungsvorgang aufruft.