Penulis
Penulis adalah aplikasi atau layanan yang menyimpan informasi persisten dalam file pada disk dan yang menyediakan nama dan lokasi file-file ini kepada pemohon dengan menggunakan antarmuka salinan bayangan.
Selama operasi pencadangan, penulis memastikan bahwa data mereka diam dan stabil—cocok untuk salinan bayangan dan cadangan. Penulis berkolaborasi dengan pemulihan dengan membuka kunci file jika memungkinkan dan menunjukkan lokasi alternatif bila perlu.
Jika tidak ada penulis selama operasi pencadangan VSS, salinan bayangan masih dapat dibuat. Dalam hal ini, semua data pada volume yang disalin bayangan akan berada dalam status crash-consistent.
Penulis mempertahankan statusnya dalam objek metadata berbasis XML, Dokumen Metadata Penulis.
Metadata penulis ini adalah satu-satunya struktur data yang berisi kumpulan file—jalur, spesifikasi file, dan bendera rekursi—data yang akan dicadangkan dan dipulihkan.
Dokumen Metadata Penulis mengatur kumpulan file penulis ke dalam grup atau komponen. Hubungan salah satu komponen ini selama operasi pencadangan dan pemulihan ke komponen lain yang dikelola oleh penulis dijelaskan dalam Dokumen Metadata Penulis oleh keterpilihan komponen untuk pencadangan, keterpilihannya untuk pemulihan, dan jalur logisnya. (Untuk informasi selengkapnya, lihat Menyiapkan Organisasi Komponen dan Bekerja dengan Jalur Pemilih dan Logis.)
Informasi tambahan yang mengatur pemulihan file dan masalah lainnya juga terkandung dalam dokumen ini.
Pemohon membutuhkan metadata penulis, bersama dengan Dokumen Komponen Cadangannya sendiri, untuk memproses pencadangan atau pemulihan.
Tidak seperti Dokumen Komponen Cadangan, Dokumen Metadata Penulis harus dianggap sebagai struktur baca-saja. Setelah penulis membuatnya, dokumen tidak diubah.
Operasi VSS penulis dimulai melalui penerimaan peristiwa COM.
Ketika tidak ada peristiwa, penulis tidak melakukan operasi VSS (seperti pencadangan atau pemulihan VSS). Sebaliknya, ia melakukan pekerjaan normalnya, seperti merespons kueri database, mengelola data pengguna, atau menyediakan layanan lain.
Untuk memastikan bahwa penanganan kesalahan untuk beberapa sesi pencadangan dan pemulihan paralel dilakukan dengan benar, dan untuk memastikan bahwa satu sesi pencadangan atau pemulihan tidak rusak yang lain, Anda harus melakukan hal berikut:
- Jika penanganan aktivitas penulis (seperti CVssWriter::OnFreeze) memanggil metode CVssWriterEx2::GetSessionId, CVssWriter::SetWriterFailure, atau CVssWriterEx2::SetWriterFailureEx , penanganan aktivitas harus memanggil metode dalam utas yang sama yang disebut penanganan aktivitas.
- Implementasi penulis Anda dari penanganan aktivitas seperti OnFreeze dapat membongkar pekerjaan ke utas pekerja jika diinginkan, selama setiap utas pekerja melakukan marshal kesalahan yang diperlukan yang melaporkan kembali ke utas penanganan aktivitas asli.
Dengan pengecualian peristiwa Identifikasi, jenis dan urutan peristiwa yang diterima penulis tergantung secara unik pada jenis operasi VSS yang saat ini sedang berlangsung.
Peristiwa Identifikasi mengharuskan penulis untuk memberikan informasi sistem tentang konfigurasi mereka dan file yang mereka kelola melalui Dokumen Metadata Penulis mereka. Peristiwa Identifikasi dihasilkan untuk mendukung hampir semua operasi VSS, termasuk kueri sistem serta operasi salinan bayangan dan pencadangan dan pemulihan. Oleh karena itu, implementasi penulis mana pun dari CVssWriter pengelola aktivitas Identifikasi::OnIdentify harus dapat menangani peristiwa Identifikasi kapan saja—termasuk di tengah pemrosesan operasi VSS lain, seperti pencadangan atau pemulihan. Peristiwa Identifikasi tidak boleh dianggap sebagai bagian dari siklus hidup operasi VSS, meskipun pembuatannya mungkin diharapkan dan diperlukan sebelum dimulainya operasi tersebut.
Sangat penting bahwa informasi status tentang operasi VSS tidak dimodifikasi di CVssWriter::OnIdentify, karena penerimaan peristiwa yang tidak berurutan akan mengatur ulang informasi tersebut.
Tergantung pada apakah ia berpartisipasi dalam pencadangan atau pemulihan, penulis akan menerima antara dua dan tujuh peristiwa, selain peristiwa Identifikasi awal.
Menangani peristiwa ini merupakan (dari sudut pandang penulis) siklus hidup operasi pencadangan atau pemulihan.
Dalam operasi pencadangan umum (lihat Gambaran Umum Pemrosesan Cadangan Di bawah VSS), penulis akan menangani peristiwa berikut (selain peristiwa Identifikasi awal):
- PrepareForBackup
- PrepareForSnapshot
- Bekukan
- Thaw
- PostSnapshot
- BackupComplete
- BackupShutdown
Dalam operasi pemulihan umum (lihat Gambaran Umum Pemrosesan Pemulihan Di bawah VSS), penulis akan menangani peristiwa berikut:
- PreRestore
- PostRestore