Peran Pemohon dalam Pencadangan Inkremental dan Diferensial VSS

Untuk mendukung operasi pencadangan inkremental atau diferensial , pemohon harus melakukan hal berikut:

  1. Tentukan tingkat dukungan penulis apa yang tersedia (menggunakan IVssBackupComponents::GetWriterMetadata untuk mendapatkan akses ke informasi di Dokumen Metadata Penulis)—khususnya, tentukan skema cadangan mana yang didukung (VSS_BACKUP_SCHEMA).
  2. Atur status pencadangan yang sesuai.
  3. Dapatkan spesifikasi tingkat set file dan file untuk pencadangan bertahap atau diferensial.
  4. Lakukan pencadangan.

Penentuan Pemohon Dukungan dan Konfigurasi Inkremental dan Diferensial

Pemohon perlu mendapatkan informasi tentang dukungan penulis sebelum memilih komponen untuk dimasukkan dalam cadangan bertahap atau diferensial atau mengatur statusnya sendiri.

Menentukan Dukungan Penulis

Pemohon menentukan apakah penulis tertentu mendukung cadangan inkremental atau diferensial VSS dengan mengambil masker skema cadangan penulis menggunakan metode IVssExamineWriterMetadata::GetBackupSchema .

Topeng skema cadangan penulis yang mendukung teknik inkremental atau diferensial VSS akan berisi VSS_BS_INCREMENTAL atau VSS_BS_DIFFERENTIAL, atau keduanya. Penulis juga dapat menunjukkan pembatasan partisipasi mereka dengan bendera VSS_BS_EXCLUSIVE_INCREMENTAL_DIFFERENTIAL . (Lihat VSS_BACKUP_SCHEMA untuk informasi selengkapnya tentang skema cadangan).

Mengatur Status Pencadangan Pemohon

Pemohon menunjukkan bahwa cadangan adalah cadangan bertambah bertahap atau diferensial dengan mengatur jenis cadangan ke VSS_BT_INCREMENTAL atau VSS_BT_DIFFERENTIAL menggunakan metode IVssBackupComponents::SetBackupState sebelum membuat peristiwa PrepareForBackup .

Metode IVssBackupComponents::SetBackupState juga digunakan untuk menunjukkan apakah pemohon menyediakan dukungan file parsial, yang sering digunakan untuk menerapkan operasi pencadangan dan pemulihan inkremental tertentu.

Mendapatkan Spesifikasi Penulis untuk Pencadangan Bertambah Bertahap dan Diferensial

Informasi spesifikasi pencadangan file tingkat set file (VSS_FILE_SPEC_BACKUP_TYPE) yang terkandung dalam Dokumen Metadata Penulis setiap penulis tersedia untuk diperiksa setelah pengembalian IVssBackupComponents::GatherWriterMetadata berhasil.

Namun, penulis dapat menambahkan file yang berbeda atau meminta dukungan file parsial sampai keberhasilan penanganan peristiwa PostSnapshot .

Spesifikasi dukungan file dan file parsial yang berbeda dapat menggantikan jenis cadangan spesifikasi file, sehingga pemohon mungkin ingin menukar analisis lengkap semua spesifikasi penulis tentang pencadangan inkremental dan diferensial hingga setelah pengembalian IVssBackupComponents::P repareForBackup berhasil.

Mendapatkan Informasi Spesifikasi Pencadangan File

Informasi spesifikasi pencadangan file tingkat set file (VSS_FILE_SPEC_BACKUP_TYPE) terkandung dalam Dokumen Metadata Penulis setiap penulis, dan dapat diperiksa segera setelah pengembalian IVssBackupComponents::GatherWriterMetadata berhasil.

Pemohon harus mendapatkan masker spesifikasi cadangan file (VSS_FILE_SPEC_BACKUP_TYPE) untuk setiap set file dari masing-masing komponen penulis untuk disertakan dalam cadangan bertahap atau diferensial, terlepas dari apakah komponen disertakan secara eksplisit atau implisit .

Pemohon dapat menentukan Dokumen Metadata Penulis penulis mana yang harus dikueri dengan menggunakan IVssBackupComponents::GetWriterComponentsCount dan IVssBackupComponents::GetWriterComponents. Instans antarmuka IVssWriterComponentsExt yang dikembalikan oleh IVssBackupComponents::GetWriterComponents memberikan informasi penulis melalui metode IVssWriterComponentsExt::GetWriterInfo .

Pemohon mendapatkan informasi komponen melalui instans antarmuka IVssWMComponent yang sesuai dengan komponen yang disertakan yang dikelola oleh penulis tertentu dengan menggunakan IVssExamineWriterMetadata::GetComponent.

Informasi tentang set file yang dikelola oleh komponen yang sesuai dengan antarmuka IVssWMComponent diperoleh dengan panggilan ke IVssWMComponent::GetFile, IVssWMComponent::GetDatabaseFile, atau IVssWMComponent::GetDatabaseLogFile (sebagaimana merujuk).

Panggilan ini dapat mengembalikan instans antarmuka IVssWMFiledesc untuk setiap set file komponen.

Jenis cadangan spesifikasi file set file diperoleh dengan memanggil IVssWMFiledesc::GetBackupTypeMask.

Mendapatkan File Parsial dan Informasi File yang Berbeda

Pemohon memperoleh file parsial dan informasi file yang berbeda melalui antarmuka IVssComponent .

Pemohon dapat melakukan iterasi atas semua penulis yang disertakan dalam cadangan menggunakan IVssBackupComponents::GetWriterComponentsCount dan IVssBackupComponents::GetWriterComponents.

Instans antarmuka IVssWriterComponentsExt yang dikembalikan oleh IVssBackupComponents::GetWriterComponents menyediakan akses ke semua instans antarmuka IVssComponent yang sesuai dengan komponen penulis yang diberikan secara eksplisit disertakan melalui metode IVssWriterComponentsExt::GetComponent dan IVssWriterComponentsExt::GetComponentCount .

Pemohon harus melalui semua instans IVssComponent untuk semua penulis yang skemanya mendukung cadangan bertambah bertahap atau diferensial—yaitu, penulis yang masker skema cadangannya, seperti yang dikembalikan oleh IVssExamineWriterMetadata::GetBackupSchema, menyertakan VSS_BS_INCREMENTAL ketika jenis cadangan VSS_BT_INCREMENTAL, atau VSS_BS_DIFFERENTIAL ketika jenis cadangan VSS_BS_DIFFERENTIAL.

Informasi file parsial diperoleh dengan memanggil IVssComponent::GetPartialFileCount dan IVssComponent::GetPartialFile (lihat Bekerja dengan File Parsial).

Untuk penulis yang mendukung operasi pencadangan berdasarkan data modifikasi terakhir file (penulis yang masker skema cadangannya, sebagaimana dikembalikan oleh IVssExamineWriterMetadata::GetBackupSchema, termasuk VSS_BS_LAST_MODIFY), informasi file yang berbeda diperoleh dengan memanggil IVssComponent::GetDifferencedFilesCount dan IVssComponent::GetDifferencedFile.

Perhatikan bahwa file yang berbeda mungkin file baru—yaitu, file yang bukan anggota set file apa pun yang saat ini berada dalam Dokumen Metadata Penulis penulis tertentu.

Pemohon tidak boleh menemukan file yang disertakan baik untuk operasi file parsial maupun sebagai file yang berbeda. Jika pemohon mengalami keadaan seperti itu, pemohon harus mengembalikan dan mencatat kesalahan penulis.

Pemohon mungkin masih memilih untuk melanjutkan dengan mencadangkan file penulis yang bermasalah, tetapi dalam hal ini harus melakukannya sesuai dengan spesifikasi yang ditemukan dalam informasi file yang berbeda.

Menerapkan Pencadangan Bertahap atau Diferensial

Sebelum menerapkan pencadangan, pemohon harus memiliki informasi tentang penulis mana yang mendukung pencadangan bertahap atau diferensial , semua operasi file parsial yang diminta, semua file yang berbeda, dan jenis cadangan spesifikasi file dari semua file lainnya.

Penulis Yang Tidak Didukung

Penulis yang skemanya tidak mendukung pencadangan bertambah bertahap atau diferensial (penulis yang masker skema cadangannya, seperti yang dikembalikan oleh IVssExamineWriterMetadata::GetBackupSchema, menyertakan VSS_BS_INCREMENTAL ketika jenis cadangan VSS_BT_INCREMENTAL atau tidak menyertakan VSS_BS_DIFFERENTIAL ketika jenis cadangan VSS_BS_DIFFERENTIAL) tidak dapat memberikan dukungan langsung ke operasi pencadangan bertambah bertahap atau diferensial.

Ini tidak selalu berarti bahwa data penulis tidak akan terlibat dalam operasi pencadangan inkremental atau diferensial. Namun, pilihan apa yang harus dilakukan adalah atas kebijakan pemohon. Pemohon dapat melakukan salah satu hal berikut:

  • Mencadangkan tidak ada file milik penulis yang tidak didukung (jelas menunjukkan ini kepada pengguna)
  • Mencadangkan semua file penulis yang tidak didukung
  • Lakukan pencadangan inkremental menggunakan data sistem file dan log riwayat pemohon sendiri.

Alternatif terakhir harus digunakan dengan sangat hati-hati, dan hanya jika pemohon memahami apakah penulis yang terlibat dapat mendukung pencadangan bertahap atau diferensial dan pemulihan data yang independen dari mekanisme VSS.

Penulis Pendukung

Pemohon perlu memproses (secara berurutan) semua file yang berbeda dari penulis, lalu menangani permintaan file parsial apa pun, lalu mencadangkan file yang tersisa sesuai dengan jenis cadangan spesifikasi file mereka (VSS_FILE_SPEC_BACKUP_TYPE).

  1. Mencadangkan File Yang Berbeda:

    Untuk penulis yang mendukung operasi pencadangan berdasarkan data modifikasi terakhir (penulis yang masker skema cadangannya, sebagaimana dikembalikan oleh IVssExamineWriterMetadata::GetBackupSchema, termasuk VSS_BS_LAST_MODIFY), pemohon menggunakan informasi jalur, spesifikasi file, dan bendera rekursi yang dikembalikan oleh IVssComponent::GetDifferencedFile untuk menghasilkan daftar file sebagai kandidat untuk pencadangan atau pemulihan inkremental.

    IVssComponent::GetDifferencedFile juga dapat mengembalikan waktu modifikasi terakhir (dinyatakan sebagai struktur FILETIME ).

    Jika waktu modifikasi terakhir yang disediakan oleh penulis bukan nol, maka pemohon menggunakannya sebagai dasar (bukan informasi sistem file atau data tersimpan pemohon sendiri) untuk menentukan apakah file harus disertakan dalam cadangan bertambah bertahap atau diferensial.

    Misalnya, jika waktu modifikasi terakhir file seperti yang dikembalikan oleh penulis adalah:

    • Setelah pencadangan penuh terakhir, file harus disertakan dalam cadangan inkremental dan diferensial.
    • Setelah pencadangan penuh terakhir tetapi sebelum pencadangan inkremental terakhir, file harus disertakan dalam operasi pencadangan inkremental, tetapi bukan cadangan diferensial.

    Jika waktu modifikasi terakhir yang disediakan oleh penulis adalah nol, maka pemohon harus menggunakan informasi sistem file dan data tersimpannya sendiri untuk menentukan waktu modifikasi file yang berbeda.

  2. Menggunakan Operasi File Parsial:

    Jika penulis telah meminta agar file dicadangkan menggunakan operasi file parsial, pemohon menggunakan informasi offset file untuk menyimpan segmen file yang ditunjukkan ke media cadangan. (Lihat Bekerja dengan File Parsial untuk informasi selengkapnya tentang operasi file parsial).

    Seperti disebutkan di atas, penulis tidak boleh menunjuk file baik sebagai file yang berbeda maupun sebagai peserta dalam operasi file parsial. Jika pemohon mengalami keadaan seperti itu, pemohon harus mengembalikan dan mencatat kesalahan penulis.

    Pemohon mungkin masih memilih untuk melanjutkan dengan mencadangkan file penulis yang bermasalah, tetapi dalam hal ini harus melakukannya sesuai dengan spesifikasi yang ditemukan dalam informasi file yang berbeda.

  3. Bekerja dengan Jenis Cadangan Spesifikasi File:

    Setelah memproses semua file yang berbeda dan operasi file parsial, pemohon sekarang memproses semua file yang tersisa dalam cadangannya yang ditetapkan berdasarkan jenis cadangan spesifikasi file mereka (VSS_FILE_SPEC_BACKUP_TYPE).

    Ada tiga nilai "diperlukan cadangan" dari enumerasi VSS_FILE_SPEC_BACKUP_TYPE yang memengaruhi pencadangan diferensial dan inkremental:

    • VSS_FSBT_ALL_BACKUP_REQUIRED
    • VSS_FSBT_INCREMENTAL_BACKUP_REQUIRED
    • VSS_FSBT_DIFFERENTIAL_BACKUP_REQUIRED

    Ada tiga nilai "salinan bayangan diperlukan":

    • VSS_FSBT_ALL_SNAPSHOT_REQUIRED
    • VSS_FSBT_INCREMENTAL_SNAPSHOT_REQUIRED
    • VSS_FSBT_DIFFERENTIAL_SNAPSHOT_REQUIRED

    Kumpulan file yang ditandai dengan jenis cadangan spesifikasi file "salinan bayangan diperlukan" menunjukkan bahwa pemohon perlu menyalin data dari salinan bayangan saat melakukan operasi pencadangan INKREMENTAL, DIFERENSIAL, atau SEMUA (yang mencakup operasi pencadangan inkremental dan diferensial).

    Bendera "cadangan diperlukan", diterapkan ke operasi pencadangan INCREMENTAL, DIFERENSIAL, atau SEMUA, menunjukkan bahwa penulis mengharapkan salinan versi file saat ini yang diatur tersedia setelah pemulihan operasi pencadangan apa pun. Biasanya, ini berarti bahwa jika kumpulan file ditandai dengan "cadangan diperlukan," pemohon akan menyalin semua anggotanya ke media cadangan selama pencadangan bertahap atau diferensial, terlepas dari kapan pencadangan atau modifikasi mereka terakhir kali terjadi.

    Secara default, set file ditambahkan ke komponen dengan jenis cadangan spesifikasi file VSS_FSBT_ALL_BACKUP_REQUIRED | VSS_FSBT_ALL_SNAPSHOT_REQUIRED. Oleh karena itu, kecuali penulis secara eksplisit mengatur jenis cadangan spesifikasi file jika tidak, pemohon perlu menyalin file-file tersebut yang tidak ditangani oleh operasi file parsial atau file yang ditunjuk berbeda di sebagian besar set file biasanya akan disalin secara keseluruhan ke media cadangan.

Stempel Cadangan

Penulis yang mendukung stempel cadangan (VSS_BS_TIMESTAMP) dapat memilih untuk menghasilkan informasi stempel cadangan yang akan digunakan untuk mendukung operasi pencadangan dan pemulihan inkremental dan diferensial di masa mendatang.

Format dan informasi yang terkandung dalam string yang berisi informasi stempel cadangan bersifat pribadi untuk penulis yang menghasilkannya; pemohon tidak tahu cara memproses informasi ini.

Penulis pendukung menyimpan stempel cadangan di Dokumen Komponen Cadangan sebagai string dengan menggunakan metode IVssComponent::SetBackupStamp .

Peran pemohon dalam menangani informasi stempel cadangan adalah (jika ada) untuk membuatnya tersedia bagi penulis dengan memanggil IVssBackupComponents::SetPreviousBackupStamp dalam operasi pencadangan atau pemulihan di masa mendatang.