Differenza tra aggiornamento differito e aggiornamento immediato

Anonim

Aggiornamento differito vs aggiornamento immediato

Aggiornamento aggiornato e aggiornamento immediato sono due tecniche utilizzate per mantenere i file di log delle transazioni dei sistemi di gestione dei database DBMS). Il registro delle transazioni (chiamato anche il registro del journal o il registro di redo) è un file fisico che memorizza l'ID transazione, il timbro della transazione, il valore precedente ei nuovi valori dei dati. Questo consente al DBMS di tenere traccia dei dati prima e dopo ogni transazione. Quando le transazioni vengono commesse e il database viene restituito a uno stato coerente, il registro potrebbe essere troncato per rimuovere le transazioni impegnate.

L'aggiornamento differito chiamato anche NO-UNDO / REDO è una tecnica utilizzata per recuperare / supportare i problemi di transazione che si verificano a causa del sistema operativo, della potenza, della memoria o dei guasti della macchina. Quando viene eseguita una transazione, eventuali aggiornamenti o modifiche apportate al database dalla transazione non vengono eseguite immediatamente. Sono registrati nel file di registro. Le modifiche di dati registrate nel file di registro vengono applicate al database su commit. Questo processo è chiamato "Re-doing". In caso di rollback, le modifiche apportate ai dati registrate nel file di registro vengono scartate; quindi non saranno applicate modifiche al database. Se un'operazione non riesce e non viene commessa a causa di una qualsiasi delle ragioni sopra indicate, i record del file di registro vengono scartati e la transazione viene riavviata. Se le modifiche apportate in una transazione vengono eseguite prima dell'arresto, dopo il riavvio del sistema, le modifiche registrate nel file di registro vengono applicate al database.

Aggiornamento immediato

Aggiornamento immediato chiamato anche UNDO / REDO, è anche un'altra tecnica utilizzata per recuperare / supportare i problemi di transazione che si verificano a causa del sistema operativo, della potenza, della memoria o dei guasti della macchina. Quando viene eseguita una transazione, uno qualsiasi degli aggiornamenti o delle modifiche apportati dalla transazione viene scritto direttamente nel database. Sia i valori originali che i nuovi valori vengono registrati nel file di registro prima che vengano apportate modifiche al database. Suo commit tutte le modifiche apportate al database vengono rese permanenti ei record del file di registro vengono scartati. Durante il rollback, i vecchi valori vengono ripristinati nel database utilizzando i vecchi valori memorizzati nel file di registro. Tutte le modifiche apportate dalle transazioni al database vengono scartate e questo processo viene chiamato "Un-doing". Quando il sistema si riavvia dopo un incidente, tutte le modifiche al database vengono rese permanenti per le transazioni impegnate. Per le transazioni non eseguite, i valori originali vengono ripristinati utilizzando i valori nel file di registro.

- 13 ->

Qual è la differenza tra aggiornamento differito e aggiornamento immediato

Anche se l'aggiornamento differito e l'aggiornamento immediato sono due metodi per il ripristino dopo un errore di sistema, il processo che ogni metodo utilizza è diverso.Nel metodo di aggiornamento differente, le modifiche apportate ai dati da una transazione vengono registrate per la prima volta in un file di registro e applicate al database in fase di commit. Nel metodo di aggiornamento immediato, le modifiche apportate da una transazione vengono applicate direttamente al database e vecchi valori e nuovi valori vengono registrati nel file di registro. Questi record vengono utilizzati per ripristinare i vecchi valori sul rollback. Nel metodo di aggiornamento differente, i record nel file di registro vengono scartati sul rollback e non vengono mai applicati al database. Uno svantaggio del metodo di aggiornamento differito è il tempo necessario per recuperare in caso di guasto del sistema. D'altra parte, operazioni frequenti di I / O mentre la transazione è attiva, è uno svantaggio nel metodo di aggiornamento immediato.