Database - Differenza tra roll-back e roll-forward con esempio

-2

Un po 'nuovo qui e anche l'apprendimento di nuovi concetti db. Mi sono un po 'confuso sui termini: Roll-back e Roll-forward. Leggo definizioni e ho pensato di capirlo. Ho trovato alcuni piccoli compiti sulle transazioni e mi ha confuso.

Esempio:

Domanda_1: quali transazioni (quando il sistema è in fase di ripristino) eseguiranno il rollback o il rollforward? (Forse entrambi?)

Question_2: come sarà il file LOG quando il sistema sarà completamente ripristinato?

    
posta JoeDoea 20.12.2017 - 18:47
fonte

1 risposta

0

Il punto di ripristino è quello di portare il sistema a uno stato coerente senza contraddire ciò che i clienti hanno precedentemente detto.

Se il client ha emesso un COMMIT e il sistema lo ha riconosciuto, quei dati devono essere lì al riavvio. Le transazioni così impegnate vengono inoltrate.

Se il sistema non ha riconosciuto un commit non è stata fornita alcuna garanzia. Il server non può conoscere lo stato del client. Questo lavoro deve essere ripristinato.

Un checkpoint copia i dati dalla memoria al disco. Una volta lì è durevole (la D in ACID). I record di log corrispondenti non sono più necessari e possono essere rimossi.

Il registro è un elenco ordinato di lavori in corso. Dopo il ripristino e prima che i client si riconnettano, non ci sono lavori in corso, quindi il registro è vuoto.

    
risposta data 20.12.2017 - 23:50
fonte

Leggi altre domande sui tag