1-mavzu. Ma’lumotlar bazasi obyektlarini yaratish


Umumiy blokirovka(shared lock)



Download 0,87 Mb.
bet25/48
Sana23.06.2022
Hajmi0,87 Mb.
#694675
1   ...   21   22   23   24   25   26   27   28   ...   48
Bog'liq
мавзулар MBDM

Umumiy blokirovka(shared lock)
Faqat o`qish uchun resursni (sahifa yoki qator) zaxiraga oladi. Boshqa jarayonlar shu tarzda qulflangan resursni o`zgartira olmaydi, biroq, boshqa tomondan, bir nechta jarayonlar parallel bitta resursda umumiy blokirovkaga ega bo'lishi mumkin. Boshqacha qilib aytganda, bir nechta jarayonlar birgalikda blokirovka qilingan resursni o`qishi mumkin.
Monopol blokirovka (exclusive lock)
Tranzaksiyada monopol foydalanish uchun sahifa yoki qatorni qulflaydi. Ushbu turdagi blokirovkalar resurslarni o`zgartiradigan DML instruksiyalar (INSERT, UPDATE va DELETE) tomonidan qo`llaniladi. Monopol blokirovkaga ega bo'lgan resursda (sahifa yoki qator) boshqa hech qanday blokirovka o'rnatilishi mumkin emas.
O`zgatirish blokirovkasi (update lock)
Resursda faqat boshqa o`zgarish blokirovkasi yoki monopol blokirovka bo'lmasa o'rnatilishi mumkin. Shu bilan bir qatorda, ushbu turdagi blokirovka ochiq blokirovkalar o'rnatilgan resurslarda o'rnatilishi mumkin. Bunday holda, o`zgartirish blokirovkasi resursga boshqa umumiy qulfni joylashtiradi. Agar resursni o`zgartiradigan tranzaksiya ishga tushsa va resursda boshqa qulflar bo'lmasa, o`zgartirish blokirovkasi monopol blokirovkaga aylantiriladi. Resursda faqat bitta o`zgartirish blokirovkasi bo'lishi mumkin.
O`zaro blokirovkalar
O`zaro blokirovkalar (Deadlock) - bu bir vaqtning o`zida ikkita tranzaksiya bir-birini blokirovka qiladigan maxsus parallel murojaat muammosi. Xususan, birinchi tranzaksiya boshqa tranzaksiya murojaat qilmoqchi bo’lgan ma`lumotlar bazasi ob`yektini bloklaydi va aksincha. (Umuman olganda, Deadlock ga bir nechta tranzaksiyalar sabab bo'lishi mumkin.) Quyidagi misolda ikkita tranzaktsiyaning o`zaro blokirovkasi holati ko`rsatilgan:
USE SampleDb;

BEGIN TRANSACTION BEGIN TRANSACTION


UPDATE Works_on UPDATE Employee
SET Job = 'Menedjer' SET DepartamentNumber = 'd2'
WHERE EmpId = 25348 WHERE Id = 28559
AND ProjectNumber = 'p2'
WAITFOR DELAY '00:00:10' WAITFOR DELAY '00:00:10'

UPDATE Employee DELETE FROM Works_on


SET LastName = 'Frolova' WHERE EmpId = 25348
WHERE Id = 28559 AND ProjectNumber = 'p2'
COMMIT COMMIT

Izolyatsiya darajalari


Izolyatsiya darajalaridan foydalanib, ma’lumotlar bazasiga parallel murojaatda qaysi muammolar yuzaga kelishi mumkinligini va qaysi birining oldini olish kerakligini belgilash mumkin. Database Engine komponenti ma`lumotlarga parallel murojaat qilishni boshqaradigan quyidagi beshta izolyatsiya darajasini qo`llab-quvvatlaydi:

  • READ UNCOMMITTED

  • READ COMMITTED

  • REPEATABLE READ

  • SERIALIZABLE

  • SNAPSHOT

Izolyasiya darajasi SET instruksiyasining TRANSACTION ISOLATION LEVEL parametri orqali o’rnatiladi





Download 0,87 Mb.

Do'stlaringiz bilan baham:
1   ...   21   22   23   24   25   26   27   28   ...   48




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