Junior — Middle
Ինչպե՞ս է տվյալների բազան օգտագործում WAL-գրառը ընդհատված գործարքը վերականգնելու համար։
sobes.tech AI
Պատասխան AI-ից
WAL (Write-Ahead Logging) է տվյալների բազաներում գրանցման մեխանիզմ, որը ապահովում է տվյալների հուսալի վերականգնումը խափանումներից հետո:
Երբ մի գործարք փոփոխում է տվյալները, փոփոխությունները նախ գրանցվում են WAL-գրառի մեջ դիսկին, ապա կիրառվում հիմնական տվյալների բազայի վրա: Եթե համակարգը ընդհատվում է (օրինակ, սնուցման խափանման պատճառով), վերականգնման ժամանակ բազան կարդում է WAL-գրառը և կրկնում (redo) կամ չեղյալ է հայտարարում (undo) ընթացքի մեջ գտնվող գործարքները, որպեսզի տվյալները վերականգնվեն կոնսիստենտ վիճակի:
Այսպիսով, WAL-ը թույլ է տալիս՝
- երաշխավորել գործարքների ատոմատությունը:
- արագ վերականգնել խափանումներից հետո՝ կիրառելով միայն գրառման փոփոխությունները:
Մոտավոր վերականգնման գործընթացը՝
- Սկսելու ժամանակ, բազան կարդում է WAL-գրառը:
- Կիրառում է բոլոր ավարտված գործարքները:
- Չեղյալ է հայտարարում անավարտ գործարքները:
- Դրանից հետո, բազան պատրաստ է աշխատել կոնսիստենտ տվյալներով: