Halasztott frissítés vs. azonnali frissítés
A halasztott frissítés és az azonnali frissítés két módszer az adatbázis-kezelő rendszerek (DBMS) tranzakciós naplófájljainak fenntartására. A tranzakciós napló (napló vagy redo naplónak is nevezik) egy fizikai fájl, amely tárolja a tranzakció azonosítóját, a tranzakció időbélyegzőjét, az adatok régi értékét és új értékeit. Ez lehetővé teszi a DBMS számára, hogy nyomon kövesse az adatokat minden egyes tranzakció előtt és után. Amikor a tranzakciók lekötésre kerülnek, és az adatbázis visszaáll egy egységes állapotba, akkor a napló csonkítható lehet a lekötött tranzakciók eltávolításához.
Halasztott frissítés
A késleltetett frissítés, NO-UNDO / REDO néven is ismert, az operációs rendszer, tápellátás, memória vagy géphiba miatt bekövetkező tranzakciós hibák helyreállítására / támogatására szolgál. Amikor egy tranzakció fut, az adatbázis által a tranzakcióval végzett bármilyen frissítést vagy módosítást nem hajtják végre azonnal. Ezeket a naplófájlba rögzítik. A naplófájlban rögzített adatváltozásokat az átvitt adatbázisra alkalmazzák. Ezt a folyamatot nevezzük újra. Visszalépéskor a naplófájlban rögzített adatokban bekövetkező bármilyen változást elvetik; ezért az adatbázisban nem lesz változás. Ha egy tranzakció kudarcot vall, és azt a fenti okok valamelyike miatt nem követik el, a naplófájlban szereplő rekordokat eldobják, és a tranzakciót újraindítják. Ha egy tranzakció módosításait összeomlás előtt hajtják végre, akkor a rendszer újraindulása után a naplófájlban rögzített változások kerülnek alkalmazásra az adatbázisban.
Azonnali frissítés
Az azonnali frissítés, más néven UNDO / REDO, egy másik módszer az operációs rendszer, tápellátás, memória vagy géphiba miatt bekövetkező tranzakciós hibák helyreállítására / támogatására. Amikor egy tranzakció fut, a tranzakció által végrehajtott frissítések vagy módosítások közvetlenül az adatbázisba kerülnek. Az adatbázisban az eredeti és az új értékeket is rögzítik a naplófájlban. Kötelezettségvállaláskor az adatbázisban végrehajtott összes változást állandóvá teszik, és a naplófájlban szereplő rekordokat eldobják. Visszaváltáskor a régi értékek visszakerülnek az adatbázisba a naplófájlban tárolt régi értékek használatával. Az adatbázisban végzett tranzakciók által végrehajtott összes változást elvetjük, és ezt a folyamatot „Csinálatlan” -nak hívják. Amikor a rendszer leáll egy összeomlás után, az összes adatbázis-változást állandóvá teszik a lekötött tranzakciókhoz. A nem átvitt tranzakciók esetén az eredeti értékek visszaállnak a naplófájlban szereplő értékekkel.
Mi a különbség a halasztott frissítés és az azonnali frissítés között
Annak ellenére, hogy a halasztott frissítés és az azonnali frissítés két módszer a rendszerhiba utáni helyreállításra, az egyes módszerek eltérőek. Különböző frissítési módszerek esetén az adatokkal egy tranzakcióval végrehajtott bármilyen változást először naplófájlban rögzítik, és az átváltáskor alkalmazzák az adatbázisban. Azonnali frissítés módszerével a tranzakciók által végrehajtott módosítások közvetlenül alkalmazandók az adatbázisra, és a régi értékeket és az új értékeket rögzítik a naplófájlban. Ezeket a rekordokat a régi értékek visszaállításához használják. Különböző frissítési módszerek esetén a naplófájl rekordjait visszakapják, és soha nem alkalmazzák az adatbázisban. A halasztott frissítési módszer egyik hátránya a meghibásodott rendszer meghibásodásának elhúzódása. Másrészt a gyakori I / O műveletek, miközben a tranzakció aktív, hátrányt jelentenek az azonnali frissítési módszernél.