Разлика между отложена актуализация и незабавна актуализация

Отложена актуализация спрямо незабавна актуализация

Отложено актуализиране и незабавно актуализиране са две техники, използвани за поддържане на файлове в журнала на транзакциите на Системите за управление на бази данни (СУБД). Дневникът на транзакциите (наричан също дневник на журнала или повторен дневник) е физически файл, който съхранява идентификатора на транзакцията, времевия печат на транзакцията, старата стойност и новите стойности на данните. Това позволява на СУБД да следи данните преди и след всяка транзакция. Когато транзакциите са извършени и базата данни се върне в последователно състояние, журналът може да бъде съкратен, за да премахне извършените транзакции.

Отложена актуализация

Отложената актуализация, наречена също NO-UNDO / REDO, е техника, използвана за възстановяване / поддръжка на транзакции, които възникват поради повреди на операционна система, захранване, памет или машина. Когато се извършва транзакция, всички актуализации или промени, направени в базата данни от транзакцията, не се извършват веднага. Те се записват в лог файла. Промените в данните, записани в лог файла, се прилагат към базата данни при извършване Този процес се нарича „Повторно действие“. При връщане назад всички промени в данните, записани в лог файла, се отхвърлят; следователно няма да се прилагат промени в базата данни. Ако транзакцията се провали и не е извършена поради някоя от посочените по-горе причини, записите в лог файла се отхвърлят и транзакцията се рестартира. Ако промените в транзакцията са извършени преди срив, след като системата се рестартира, промените, записани в лог файла, се прилагат към базата данни.

Незабавна актуализация

Незабавната актуализация, наречена също UNDO / REDO, е също друга техника, използвана за възстановяване / поддръжка на транзакции, които възникват поради повреди на операционна система, захранване, памет или машина. Когато се извършва транзакция, всяка от актуализациите или промените, направени от транзакцията, се записват директно в базата данни. И оригиналните стойности, и новите стойности също се записват в лог файла, преди да бъдат направени промени в базата данни. При ангажиране всички промени, направени в базата данни, се правят постоянни и записите в лог файла се изхвърлят. При връщане старите стойности се възстановяват в базата данни, като се използват старите стойности, съхранявани в лог файла. Всички промени, направени чрез транзакции в базата данни, се отхвърлят и този процес се нарича „Недействащ“. Когато системата се рестартира след срив, всички промени в базата данни се правят постоянни за извършени транзакции. За неупълномощени транзакции първоначалните стойности се възстановяват с помощта на стойностите в лог файла.

Каква е разликата между отложена актуализация и незабавна актуализация

Въпреки че отложеното актуализиране и незабавното актуализиране са два метода за възстановяване след повреда в системата, процесът, който всеки метод използва, е различен. При различен метод на актуализиране, всички промени, направени в данните чрез транзакция, първо се записват в лог файл и се прилагат към базата данни при фиксиране. При метода на незабавно актуализиране промените, направени от транзакция, се прилагат директно към базата данни, а старите стойности и новите стойности се записват в лог файла. Тези записи се използват за възстановяване на стари стойности при връщане. При различен метод на актуализиране, записите в лог файла се изхвърлят при връщане назад и никога не се прилагат към базата данни. Един недостатък на метода на отложена актуализация е увеличеното време, необходимо за възстановяване в случай на повреда в системата. От друга страна, честите I / O операции, докато транзакцията е активна, са недостатък при метода за незабавно обновяване.