O’zbekiston Respublikasi Axborot Texnologiyalari va Kommunikatsiyalarini Rivojlantirish Vazirligi Muhammad al-Xorazmiy nomidagi Toshkent Axborot Texnologiyalari Universiteti



Download 374,94 Kb.
Sana08.09.2021
Hajmi374,94 Kb.
#168259
Bog'liq
TuychiyevOrifxon TAT 8-lab



O’zbekiston Respublikasi Axborot Texnologiyalari va Kommunikatsiyalarini Rivojlantirish Vazirligi

Muhammad al-Xorazmiy nomidagi

Toshkent Axborot Texnologiyalari Universiteti

TAT fanidan



LABORATORIYA ISHI-8

Topshirdi: 213-17 guruh talabasi

Tuychiyev Orifxon

Toshkent-2021
Laboratoriya №8

Taqsimlangan tranzaksiyalar

Ishdan maqsad: Tranzaksiyalar haqida tushunchaga ega bo’lish.

Nazariy qism:

Ko'p foydalanuvchilar ma'lumotlar bazasining ishlashi jarayonida parallel ravishda bir nechta vazifani qayta ishlash vaqtida ba'zi foydalanuvchilarning xatti-harakati boshqalarning ishiga salbiy ta'sir ko'rsatmasligini ta'minlashi kerak. Ba'zi hollarda, foydalanuvchi faqat bitta ma'lumotlar bazasi foydalanuvchisi kabi parallel ishlash sharoitida bir xil natijani olishini ta'minlashdir. Boshqa hollarda, turli foydalanuvchilarning xatti-harakatlari bir-biriga ta'sir qilishi mumkin, ammo kutilgan.

Afsuski, barcha holatlar uchun ideal tarzda parallel ma'lumotlarni qayta ishlashni tashkil qilish bo'yicha hech qanday strategiya mavjud emas - barcha usullar qulaylik va ma'lumotlar bazasi mustahkamligi o'rtasida ba'zi kelishmovchiliklarni o'z ichiga oladi.

Ushbu muammoni hal etishning muhim bir qismi tranzaktsion mexanizmdan foydalanishdir. Agar tranzaksiya, barcha harakatlar muvaffaqiyatli bajarilgan yoki ulardan hech biri amalga oshirilmagan ma'lumotlar bazasidan amallar ketma-ketligi. Jarima atom (ingliz atomi) dir, u butunlay bajariladi.

Jarayon bazaning mantiqan to'g'ri izchil holatini boshqa biriga va oraliq nuqtalarda (ya'ni, bitimning bajarilishi paytida) o'zgartirilishi sifatida ko'rib chiqilishi mumkin, ma'lumotlar bazasi barqaror holatda bo'lishi mumkin.

Masalan, sotuvchining hisobvarag'idan sotib olish uchun to'lovni pulni qabul qiluvchining hisobvarag'iga o'tkazishda (biz barcha ma'lumotlar bitta ma'lumotlar bazasida saqlangan deb hisoblaymiz), ko'rsatilgan miqdorni bir hisobdan yozib olish va uni boshqasiga o'tkazish kerak. Agar mablag 'hisobdan o'chirilgan bo'lsa-da (masalan, bu operatsiyalar o'rtasida serverning elektr uzilishi natijasida) ichki ziddiyat yuzaga kelsa - pul yo'qoladi. Shuning uchun operatsiyalarning bunday ketma-ketligi tranzaktsiya sifatida belgilangan bo'lishi kerak.

Jarayonning doirasini aniqlash uchun dastur buyrug'i chiqarishga, operatsiyani saqlashga, tranzaktsiyani qaytarishga harakat qilishi kerak. Jurnal BEGIN TRANSACTION operatori bilan boshlanadi (MS SQL Serverda, BEGIN TRAN qisqartmasi qabul qilinadi va ba'zi DBMS START TRANSACTION yoki MODE TRANSACTION ifodasini ishlatadi). Jurnal, COMMIT iborasi (MS SQL Server - COMMIT TRANSACTION yoki COMMIT TRAN uchun noaniq qaydda) yoki ROLLBACK (ROLLBACK TRANSACTION, ROLLBACK TRAN) ifodasi bilan yakunlanadi. COMMIT bayonoti ishning mantiqiy birligining oxirigacha ishora qiladi. ROLLBACK iborasini bajarish DBni oldingi ishni bajarish punktiga qaytaradi.

Qabul qiluvchining hisobidan pulni sotuvchining hisobvarag'iga o'tkazish misolini ko'rib chiqing. Hisoblardagi ma'lumotlar Hisoblar jadvalida, sotuvchida va xaridorda jadvalda ("Qabul qiluvchilarni" va "sotuvchi1") noyob nomlar va faqat bitta hisobga ega bo'lishlari uchun soddalashtirish uchun mablag '100 rublni tashkil qiladi. Keyinchalik, operatsiyaning shunday ko'rinishi mumkin:
BEGIN TRAN
UPDATE hisoblari MODE AccountSum = AccountSum-100 WHERE Name = 1 Buyer1 ';
UPDATE Hisob MODE AccountSum = AccountSum + 100 WHERE Name = 'Satıcı1';
QO'ShIMChA TRAN
Bunday operatsiyani bajarish paytida COMMIT bayonotini kuchaytirishdan oldin, qayta tiklash jarayoni tugagandan so'ng, ma'lumotlar bazasi tranzaksiya boshlangunga qadar davlatga qaytariladi (bu bobda keyinroq batafsilroq).

Jurnalni boshqa hollarda qaytarib olishingiz mumkin. Buning uchun, xususan, shartli IF ifodasi ishlatilishi mumkin (bu 10-bobda batafsil ko'rib chiqiladi), bu bitimni muvaffaqiyatli bajarish shartini belgilaydi:


BEGIN TRANSACTION
IF (QO'ShIMChA TRANSACTION
ELSE
ROLLBACK TRANSACTION
Boshida va oxirida kodda aniq ko'rsatilgan operatsiyalardan tashqari, yopiq operatsiyalar ham mavjud. Misol uchun, milodiy SQL Server DBMS, sukut bo'yicha, bunday SQL iboralarni INSERT, Delete, UPDATE kabi yopiq operatsiyalar deb hisoblaydi. Ayniqsa, UPDATE iborasi jadvalning bir necha qatorini o'zgartirsa va kamida bitta qatorda muvaffaqiyat qozona olmasa, butun operatsiya bekor qilinadi va jadval operatsiya boshlanishida davlatga qaytariladi. Shuni ta'kidlash joizki, Access 2010 da UPDATE bayonoti tranzaksiya hisoblanmaydi.

Jarayonlarda quyidagi xususiyatlardan to'rttasi bor (ular shuningdek, kislota xususiyatlari deb ataladi - Atom, muvofiqlik, izolyatsiya, chidamlilik):

• atomizm - bitim bo'linmasligi yoki barcha harakatlar bajarilishi yoki hech narsa qilinmaydi:

• izchillik - bitim oraliq joylarda majburiyatni majburiy ta'minlashga mos kelmasdan, ma'lumotlar bazasining bir izchil holatini boshqasiga o'tkazadi;

• izolyatsiya - bir nechta raqobatlashtirilgan bitimlar tuzilgan bo'lsa ham, bitimlarning bittasi tomonidan amalga oshiriladigan har qanday yangilash o'zgarishlarni amalga oshirgan bitim amalga oshirilgunga qadar boshqalardan yashiriladi;

• chidamlilik - tranzaksiya tugagach, yangilanishlar saqlanib qolinadi, hatto keyingi safar tizim muvaffaqiyatsiz tugadi.

Bir vaqtning o'zida bir xil ma'lumotlar bazasi ob'ektlaridan foydalangan holda bir nechta bitimlar amalga oshirilganda, bu bitimlar bir vaqtda yoki bir vaqtning o'zida bitimlar ( bir vaqtda bajariladigan operatsiyalar) deb ataladi . Agar Ns AXSSning yuqorida aytib o'tilgan xususiyatlarini ta'minlash uchun qo'shimcha choralar ko'rsatsa, raqobat qilinadigan bitimlar paydo bo'lishi kabi muammolarga olib kelishi mumkin:

• yo'qolgan yangilash muammosi (eng. Yo'qotilgan yangilash) - bir nechta foydalanuvchi bir xil chiziqni boshlang'ich qiymatiga qarab o'zgartiradi, natijada ma'lumotlar bir qismi yo'qoladi, chunki har bir keyingi operatsiya oldingi o'zgarishlarni yozadi;



• "iflos o'qish" muammosi (tug'ma iflos o'qish) muammosi, operatsiyani o'zgartirgan, ammo ma'lumotlar bazasida saqlanmagan yozuvni o'qiyotganda paydo bo'lishi mumkin (ma'lumotlar hali tugatilmagan, keyinchalik bekor qilinadi);

• takrorlanmaydigan o'qishlar muammosi - avvaldan o'qilgan ma'lumotlarni qayta o'qiyotganda, tranzakka boshqa tugallangan operatsiyani bajarish natijasida o'zgartirishlar yoki yo'qotishlarni aniqlaydi; bunday o'zgarish jurnali mantig'ini buzishi mumkin;

• Fantomlarni o'qish muammosi (eng chiroyli o'qish) ma'lumotni takroran o'qish paytida, ushbu ma'lumotlar to'plamining oldingi o'qishidan so'ng bajarilgan boshqa bitim bilan kiritilgan yoki o'zgartirilgan yangi satrlarni aniqlanganda paydo bo'ladi.



"Yo'qolgan yangilash" misolini ko'rib chiqaylik. Ma'lumotlar bazasida o'yinchoq do'konidagi mahsulotlar haqida ma'lumot berilsin. Ushbu parallel operatsiyalar boshlanishidan oldin, savdo maydonchasida 10 qizil kauchuk to'p bor edi. Foydalanuvchi A (sotuvchi) savdo nuqtasiga yana ikkita ballni etkazib berish bo'yicha B to'plamini (B) ishlatuvchi B to'plamini sotishga oid ma'lumotlarni kiritadi. Muammo shundaki, vazifalar bir vaqtning o'zida kelib tushdi va BXMS "yolg'on-parallel" bajarilishini ta'minlashga majbur.




Xulosa

Men bu laboratoriya ishimda taqsimlangan tizimlarda Tranzaksiya tushunchasi haqida bilib oldim. Biz bu labaratoriya ishda o’zimizga kerakli bo’lgan savollarga javob oldik. O’ylaymanki bu menga kelajakda yuksak marralarni zaft etishimda albatda ast qotadi. Ushbu bajargan vazifalarni hayotga tatbiq qilish juda muhimdir. IT texnologiyalar asrida yashar ekanmiz o’rganayotgan bilimlarimiz ish jarayonlarida nechog’lik ahamiyat kasb etishi ham dasturchi, IT mutahasisi bilishi zarur.

Download 374,94 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish