It's allways important to know just a bit more about this technology.
http://www.achab.it/blog/index.cfm/2014/5/come-funziona-vss.htm
<----------->----------->
Ecco un interessante articolo che spiega in maniera dettagliata la tecnologia VSS.
Con l'occasione estrapolo alcune informazioni specifiche:
VSS può creare snapshot con due livelli di coerenza:
<---------> --------->
- coerenza a livello di crash: viene creata la copia snapshot del volume selezionato. Questa copia non contiene dati in corso di modifica o presenti in memoria, pertanto alcuni possono mancare o essere incoerenti.
- Coerenza a livello di applicazione: l'applicazione sottoposta a backup controlla i propri file presenti nella copia snapshot per accertarsi che siano corretti. Per esempio, comprende le informazioni residenti in memoria e le transazioni di database non ancora completate in modo da essere più precisa e coerente.
<---------> --------->
Il servizio VSS si compone di tre sottosistemi che interagiscono per creare e mantenere le copie snapshot:
- VSS requester (in pratica il programma di backup): richiede la creazione della copia snapshot e, quando questa non è più necessaria, ne richiede la rimozione.
- VSS writer: permette a un'applicazione di accertarsi che i rispettivi file inclusi in una copia snapshot siano coerenti con l'applicazione stessa. I VSS writer sono integrati nelle applicazioni compatibili con VSS come per esempio Exchange e SQL Server.
- VSS provider: crea e mantiene le copie snapshot. I sistemi operativi Microsoft sono dotati di un VSS provider denominato Microsoft VSS Provider.
<---------> --------->
Nello specifico, consideriamo uno snapshot creato e mantenuto da un Microsoft VSS Provider.
Il Microsoft VSS Provider crea normalmente le copie snapshot sul medesimo volume dei dati di cui effettua la copia.
Se questi dati cambiano, una copia della loro precedente versione viene salvata in una destinazione denominata "shadow storage".
In questo modo la copia snapshot può mantenere una versione dei dati originali risalenti a un determinato istante temporale occupando su disco lo spazio equivalente ai soli dati modificati nel frattempo.
Questo per quanto riguarda il mantenimento della copia snapshot; e per quanto riguarda il suo utilizzo da parte del job di backup?
Il job di backup chiede al servizio VSS di fornire i dati selezionati. A questo punto:
- se i dati sono cambiati, lo snapshot fornisce al job di backup una copia dei dati precedenti al momento del cambiamento prelevandoli dallo shadow storage;
- se i dati non sono cambiati, la copia snapshot fornisce al job di backup i dati del volume attualmente in uso.
<---------> --------->