title: Data manager
text: # Data manager
  
  In informatica, il data manager, o gestore dei dati, è un insieme di moduli di un DBMS che operano coordinati dal transaction manager.
  
  ## Componenti
  
  Fanno parte del data manager i seguenti moduli:
  
  * Recovery manager
  * Buffer manager
  * Log manager
  
  ## Recovery manager
  
  Il recovery manager è un modulo di un DBMS incaricato di memorizzare in modo persistente solo l'effetto delle transazioni etichettate come committed.
  
  ### Funzionamento
  
  Il recovery manager si occupa del ripristino della base di dati in seguito a malfunzionamenti.
  
  Si occupa quindi della protezione dai guasti.
  
  In caso di malfunzionamento, il recovery manager riporta il database ad uno stato consistente annullando gli effetti delle transazioni ancora attive.
  
  Al fine di garantire un buon grado di resilienza anche a fronte di guasti dei dispositivi meccanici (HDD), il recovery manager coopera in stretto contatto con gli altri moduli che compongono il data manager.
  
  ## Log manager
  
  Il log manager, o gestore dei log, è un modulo di un DBMS che si occupa della memorizzazione dei dettagli circa le operazioni di aggiornamento effettuate dalle transazioni.
  
  ### Funzionamento
  
  Ad ogni transazione il log manager salva, sotto ordine del recovery manager, due versioni della base di dati:
  
  * Before Image: lo stato del database prima degli effetti della transazione
  * After Image: lo stato del data base dopo gli effetti della transazione
  
  Per ogni Log vengono memorizzate le seguenti informazioni:
  
  * ID della transazione
  * Tipo di operazione eseguita (Read/Write)
  * Indirizzo della pagina letta/modificata
  * Before e After Image
  