T1 Boshlash Tranzaksiya
2. Bitimni amalga oshirish jarayonida har bir o'zgartirilgan yozuv uchun protokolda yangi qiymat qayd etiladi.
T1. ID _ YOZISH , atribut, yangi qiymat
(ID _ YOZISH - noyob rekord raqam)
3. Agar tranzaktsiyani tashkil etuvchi barcha harakatlar muvaffaqiyatli bajarilgan bo'lsa, u holda operatsiya qisman qayd qilinadi va protokolga quyidagilar kiritiladi:
T 1 COMMT
4. Tranzaktsiya amalga oshirilgandan so'ng, T1 bilan bog'liq protokol yozuvlari ma'lumotlar bazasiga o'zgartirishlar kiritish uchun ishlatiladi.
5. Agar nosozlik yuzaga kelsa, DBMS jurnalga qaraydi va qaysi tranzaktsiyalarni qayta bajarish kerakligini aniqlaydi. Agar protokol ikkala yozuvni ham o'z ichiga olsa, T1 tranzaksiyasi qayta bajarilishi kerak T1 Boshlash Tranzaksiya va T 1 COMMT . Ma'lumotlar bazasi mos kelmaydigan holatda bo'lishi mumkin, ammo o'zgartirilgan ma'lumotlar elementlarining barcha yangi qiymatlari jurnalda mavjud va bu operatsiyani qayta bajarishni talab qiladi. Buning uchun tizim protsedurasi qo'llaniladi.QAYTA QILISH(), jurnalni oldinga siljish orqali barcha element qiymatlarini yangilari bilan almashtiradi.
6. Agar jurnalda operatsiyani bajarish buyrug'i bo'lmasa BILAN OMMIT, keyin hech qanday harakat talab qilinmaydi va tranzaksiya qayta boshlanadi.
Zudlik bilan amalga oshiriladigan muqobil mexanizm to'g'ridan-to'g'ri ma'lumotlar bazasiga o'zgartirishlar kiritishni ta'minlaydi va protokolga nafaqat yangi, balki o'zgartirilgan atributlarning barcha eski qiymatlari ham kiritiladi, shuning uchun har bir yozuv quyidagicha ko'rinadi:
T1. ID _ YOZISH , atribut, yangi qiymat eski qiymat
Bunday holda, jurnalga yozish ma'lumotlar bazasida operatsiyaning bevosita bajarilishidan oldin bo'ladi. Tranzaktsiya amalga oshirilganda, ya'ni buyruqqa duch keladi T1 MAVJUD, va u bajariladi, keyin barcha o'zgarishlar allaqachon ma'lumotlar bazasiga kiritilgan va ushbu tranzaktsiyaga nisbatan boshqa hech qanday harakat talab etilmaydi.
Tranzaksiya orqaga qaytarilganda tizim protsedurasi bajariladi BERISH (), bu buyruqdan boshlab ketma-ket protokol bo'ylab o'tib, bekor qilingan tranzaksiyadagi barcha eski qiymatlarni qaytaradi. OMONTAJNI BOSHLASH.
O'chirish uchun quyidagi mexanizm qo'llaniladi:
· Agar tranzaktsiyada tranzaktsiyani boshlash buyrug'i mavjud bo'lsa-da, lekin uning bajarilishini tasdiqlovchi buyruq buyrug'i bo'lmasa, u holda harakatlar ketma-ketligi tranzaktsiya orqaga qaytarilganda bajariladi, ya'ni eski qiymatlar tiklanadi.
Aslida, tiklanish yanada murakkab algoritmlarga muvofiq amalga oshiriladi, chunki jurnalda ham, ma'lumotlar bazasida ham o'zgarishlar darhol qayd etilmaydi, lekin buferlanadi. O'zgarishlar jurnali nafaqat tranzaktsiyalarni boshqarish bilan, balki RAMdagi ma'lumotlar bazasi sahifalarini buferlash bilan ham chambarchas bog'liq. Agar ma'lumotlar bazasini o'zgartirish bo'yicha har qanday operatsiyani bajarishda jurnalga kirishi kerak bo'lgan ma'lumotlar bazasi o'zgarishi haqidagi yozuv darhol tashqi xotiraga yozilgan bo'lsa, bu tizimning sezilarli sekinlashishiga olib keladi. Shuning uchun jurnal yozuvlari ham buferlanadi: normal ishlash vaqtida keyingi sahifa faqat yozuvlar bilan to'la bo'lganda jurnalning tashqi xotirasiga suriladi.
Do'stlaringiz bilan baham: |