Atidėtas atnaujinimas vs neatidėliotinas atnaujinimas
Atidėtas atnaujinimas ir greitas atnaujinimas yra du būdai, naudojami duomenų bazių valdymo sistemų (DBVS) operacijų žurnalo failams tvarkyti. Operacijų žurnalas (dar vadinamas žurnalo žurnale arba perdarymo žurnale) yra fizinis failas, kuriame saugomas operacijos ID, operacijos laiko antspaudas, sena vertė ir naujos duomenų vertės. Tai leidžia DBVS sekti duomenis prieš ir po kiekvienos operacijos. Kai įvykdomos operacijos ir duomenų bazė grąžinama į pastovią būseną, žurnalas gali būti sutrumpintas, kad būtų pašalintos įvykdytos operacijos.
Atidėtas atnaujinimas
Atidėtas atnaujinimas, dar vadinamas NO-UNDO / REDO, yra metodas, naudojamas operacijų gedimams, atsirandantiems dėl operacinės sistemos, maitinimo, atminties ar mašinos gedimų, atkurti / palaikyti. Kai vykdoma operacija, bet kokie duomenų bazės atnaujinimai ar pakeitimai, atlikti operacijos, nėra atliekami iškart. Jie įrašomi į žurnalo failą. Duomenų pakeitimai, užregistruoti žurnalo faile, yra taikomi duomenų bazėje. Šis procesas vadinamas „pakartotiniu darymu“. Atšaukus visus žurnalo faile įrašytų duomenų pakeitimus, jie atmetami; todėl jokie pakeitimai nebus taikomi duomenų bazėje. Jei operacija nepavyksta ir ji nėra įvykdyta dėl bet kurios iš aukščiau paminėtų priežasčių, įrašai žurnalo faile yra panaikinami ir operacija pradedama iš naujo. Jei operacijos pakeitimai įvykdomi prieš sudužus, tada, paleidus sistemą iš naujo, žurnalo faile įrašyti pakeitimai pritaikomi duomenų bazėje.
Greitas atnaujinimas
Greitas atnaujinimas, dar vadinamas UNDO / REDO, taip pat yra dar viena technika, naudojama operacijų gedimams, atsirandantiems dėl operacinės sistemos, maitinimo, atminties ar mašinos gedimų, atkurti / palaikyti. Kai vykdoma operacija, bet kokie atnaujinimai ar pakeitimai, padaryti atlikus operaciją, įrašomi tiesiai į duomenų bazę. Tiek pradinės, tiek naujos vertės taip pat įrašomos į žurnalo failą prieš atliekant duomenų bazės pakeitimus. Vykdant įsipareigojimus, visi duomenų bazės pakeitimai tampa visam laikui, o įrašai žurnalo faile yra panaikinami. Atšaukus senas reikšmes duomenų bazėje atkuriamos naudojant senas reikšmes, saugomas žurnalo faile. Visi duomenų bazės operacijų atlikti pakeitimai yra atmetami ir šis procesas vadinamas „Nedarančiu“. Kai sistema po avarijos paleidžiama iš naujo, visi įvykdyti duomenų bazės pakeitimai yra visam laikui. Neįpareigotų operacijų pirminės vertės atkuriamos naudojant žurnalo failo reikšmes.
Kuo skiriasi atidėtas atnaujinimas ir greitas atnaujinimas
Nors atidėtas atnaujinimas ir greitas atnaujinimas yra du atstatymo po sistemos gedimo būdai, kiekvieno metodo naudojamas procesas yra skirtingas. Taikant skirtingą atnaujinimo metodą, bet kokie duomenų pakeitimai, padaryti atliekant operaciją, pirmiausia įrašomi į žurnalo failą ir pritaikomi duomenų bazėje. Tiesioginio atnaujinimo metodu operacijos atlikti pakeitimai tiesiogiai pritaikomi duomenų bazėje, o senosios vertės ir naujos vertės įrašomos į žurnalo failą. Šie įrašai yra naudojami senosioms vertėms atkurti. Taikant skirtingą atnaujinimo metodą, žurnalo failo įrašai yra atmetami atnaujinus ir niekada netaikomi duomenų bazėje. Vienas atidėto atnaujinimo metodo trūkumas yra ilgesnis laikas, kurio reikia atkūrimui, sugedus sistemai. Kita vertus, dažnos įvesties ir išvesties operacijos, kai operacija yra aktyvi, yra greito atnaujinimo metodo trūkumas.