* Crash di sistema: Interruzioni di corrente inaspettate, malfunzionamenti hardware.
* Fuggi di transazioni: Una transazione potrebbe fallire a metà strada a causa di errori o conflitti.
* Fai guasti dei media: Crash del disco, danni ai dispositivi di conservazione.
* Errori del software: Bug nel sistema di gestione del database (DBMS) stesso.
Il sistema di controllo del recupero lo raggiunge attraverso una combinazione di tecniche, principalmente:
* Registrazione: Ciò comporta la registrazione di tutte le modifiche del database (transazioni) in un file di registro speciale. Le voci del registro includono in genere informazioni come l'ID transazione, il tipo di operazione (inserto, aggiornamento, eliminazione), i dati interessati e i timestamp. Questo registro funge da cronologia di tutte le modifiche apportate al database.
* Checkpointing: Questo è un processo di scrittura periodica dello stato attuale del database (ad esempio un elenco di transazioni attive) in un file checkpoint. I checkpoint riducono significativamente la quantità di lavoro necessaria durante il recupero, in quanto fornisce uno stato coerente noto da cui iniziare.
* Algoritmi di recupero: Questi algoritmi utilizzano il registro e i punti di blocco per annullare gli effetti di transazioni incomplete (quelle che non sono riuscite prima di impegnarsi) e rifare gli effetti delle transazioni impegnate che non sono state ancora scritte nel database (a causa di un incidente prima del completamento). Sono impiegati diversi algoritmi (ad es. Annulla/ripetiti, solo rifugio) a seconda del DBMS specifico e della sua strategia di recupero.
Tipi di recupero:
* Annulla il recupero: Ciò si concentra sul rimuovere gli effetti di transazioni incomplete. Utilizza il registro per identificare e invertire le modifiche apportate da transazioni che non sono completate correttamente.
* Ripristino di ripetizione: Ciò comporta la riapplicazione delle modifiche apportate da transazioni impegnate che non sono state ancora scritte nel database al momento del fallimento.
* Annulla/Ripristina il recupero: Questo combina sia le strategie di annullamento che quella di rifare per gestire transazioni sia incomplete che non impegnate. Questo è il tipo di recupero più comune.
In sostanza, il sistema di controllo del recupero funge da polizza assicurativa contro la perdita di dati e le incoerenze. Assicura che anche in caso di guasti, il database possa essere riportato a uno stato coerente che riflette le transazioni impegnate, preservando l'integrità dei dati e mantenendo la fiducia degli utenti.
software © www.354353.com