Odložena posodobitev proti takojšnji posodobitvi
Odložena posodobitev in takojšnja posodobitev sta dve tehniki, ki se uporabljata za vzdrževanje datotek dnevnika transakcij sistemov za upravljanje baz podatkov (DBMS). Dnevnik transakcij (imenovan tudi dnevnik dnevnika ali ponovno dnevnik) je fizična datoteka, ki shrani ID transakcije, časovni žig transakcije, staro vrednost in nove vrednosti podatkov. To DBMS omogoča, da spremlja podatke pred in po vsaki transakciji. Ko so transakcije zavezane in vrne bazo podatkov v dosledno stanje, je dnevnik lahko okrnjen, da odstrani storjene transakcije.
Odložena posodobitev
Odložena posodobitev, imenovana tudi NO-UNDO / REDO, je tehnika, ki se uporablja za obnovitev / podporo transakcijskih napak, do katerih pride zaradi okvar operacijskega sistema, napajanja, pomnilnika ali naprave. Ko se transakcija izvaja, se nobene posodobitve ali spremembe, ki jih v transakcijo naredi baza podatkov, ne izvedejo takoj. Zabeleženi so v dnevniški datoteki. Spremembe podatkov, zabeležene v dnevniški datoteki, se uporabijo v bazi podatkov ob potrditvi. Ta postopek se imenuje »Ponovno početje«. Ob vračilu se vse spremembe podatkov, zabeleženih v dnevniški datoteki, zavržejo; zato se baze podatkov ne bodo spremenile. Če transakcija ne uspe in je ne opravi zaradi katerega koli od zgoraj navedenih razlogov, se zapisi v dnevniški datoteki zavržejo in transakcija se znova zažene. Če so spremembe transakcije izvedene pred zrušitvijo, se po ponovnem zagonu sistema spremembe, zabeležene v dnevniški datoteki, uporabijo v bazi podatkov.
Takojšnja posodobitev
Takojšnja posodobitev, imenovana tudi UNDO / REDO, je tudi druga tehnika, ki se uporablja za obnovitev / podporo transakcijskih napak, do katerih pride zaradi okvar operacijskega sistema, napajanja, pomnilnika ali naprave. Ko se transakcija izvaja, se vse posodobitve ali spremembe, izvedene s transakcijo, zapišejo neposredno v bazo podatkov. Izvirne in nove vrednosti se zabeležijo tudi v dnevniški datoteki, preden se v bazi podatkov spremenijo. Ob prevzemu so vse spremembe v bazi podatkov trajne in zapisi v dnevniški datoteki se zavržejo. Ob vračilu se stare vrednosti obnovijo v bazo z uporabo starih vrednosti, shranjenih v dnevniški datoteki. Vse spremembe, opravljene s transakcijami v bazi, se zavržejo in ta postopek se imenuje »Neizvajanje«. Ko se sistem po sesutju znova zažene, so vse spremembe baze podatkov trajne za transakcije. Za nepopolne transakcije se prvotne vrednosti obnovijo z vrednostmi v dnevniški datoteki.
Kakšna je razlika med Odloženo posodobitvijo in takojšnjo posodobitvijo
Čeprav sta Odložena posodobitev in takojšnja posodobitev dve metodi za obnovitev po okvari sistema, je postopek, ki ga uporablja vsaka metoda, drugačen. Pri različni metodi posodobitve se vse spremembe podatkov, ki jih transakcija izvede, najprej zabeležijo v datoteko dnevnika in se uporabijo v bazi podatkov ob zavezi. Pri metodi takojšnje posodobitve se spremembe, izvedene s transakcijo, neposredno uporabijo v bazi podatkov, stare vrednosti in nove vrednosti pa se zapišejo v datoteko dnevnika. Ti zapisi se uporabljajo za obnavljanje starih vrednosti ob vračilu. V različni metodi posodabljanja se zapisi v dnevniški datoteki vrnejo nazaj in se nikoli ne uporabijo v bazi podatkov. Ena od pomanjkljivosti odložene metode posodabljanja je povečan čas, potreben za obnovitev v primeru okvare sistema. Po drugi strani so pogoste metode V / I, medtem ko je transakcija aktivna, slabost pri načinu takojšnje posodobitve.