В многопотребителска споделена система, множество потребители, работещи с едни и същи данни, могат да доведат до несъответствие в данните, затова са необходими заключващи операции в едновременни операции за контрол на едновременното изпълнение на транзакции.
Споделено заключване:Както се вижда от името, заключването може да се споделя, но операцията по запис не трябва да се споделя, щом споделените данни се записват на случаен принцип, няма "заключване", затова споделената заключваща се е операция за четене "споделяне", тоест заключването вече не може да се записва след добавянето на тази заключваща връзка, но може да се чете, може да се нарече и заключване само за четене.
Ексклузивни ключалки:Ексклузивният катинар е по-доминиращ, стига да добавя този катинар, други операции не могат да се извършват, защо? Тъй като искам да променя данните, тъй като искам да ги модифицирам, не трябва да позволя на други да ги променят отново, и не трябва да добавям заключване само за четене, защото при заключване само за четене не мога да извършвам операции по запис.
Например, ако транзакция T1 добавя споделен катинар към данните D1, а транзакциите T2 и T3 добавят ексклузивни заключвания към данните D2 и D3 съответно, тогава транзакция T1 добавя споделен катинар към данните (51). Данни за двойки T2 транзакции (52).
(51) Отговор: D
A. D2 и D3 плюс заключването са успешни B. D2, D3 плюс споделеното заключване са успешни C. D2 плюс споделеното заключване успява, D3 добавя, заключването се проваля D. D2, D3 плюс ексклузивни и споделени ключалки се провалят
(52) Отговор: C
A. D1, D3 плюс споделеното заключване всички се провалиха B. D1, D3 плюс споделеното заключване са успешни C. D1 плюс споделено заключване успя, D3 добави още един катинар, който не успя D. D1 плюс заключването успяха, а D3 не успя да добави споделената ключалка
Ако има споделена ключалка, можеш да добавиш споделена ключалка, но не можеш да добавиш ексклузивен катинар. Ако има изключителна ключалка, тогава нито споделената, нито ексклузивната ключалка не могат да бъдат добавени.
|