wyk11, Bazy Danych, Wykłady bazy danych - PDF
[ Pobierz całość w formacie PDF ]
Transakcje
Wykład 11
Prowadzący: dr Paweł Drozda
Algorytmy zarządzania współbieżnym
wykonaniem transakcji
blokowanie - uszeregowanie transakcji
wynika z kolejności uzyskiwanych
blokad
znaczników czasowych – uszeregowanie
wynika z wartości znaczników
czasowych związanych z transakcjami
optymistyczne – walidacja poprawności
uszeregowania
dr Paweł Drozda
Metody znaczników czasowych (1)
znacznik czasowy (TS) – unikalny
identyfikator wyznaczający kolejność
transakcji (wg kolejności uruchomienia)
generowane przez zegar bądź przez
licznik (poprzez zwiększenie o jeden)
znaczniki czasowe jednostek danych:
ReadTS(x) – znacznik ostatniej transakcji
czytającej x
WriteTS(x) – znacznik ostatniej transakcji
piszącej do x
dr Paweł Drozda
Metody znaczników czasowych (2)
Algorytm
T chce odczytać x
jeśli TS(T) < WriteTS(x), to T wycofywana i
restartowana z nowym TS(T)
gdy TS(T) >= WriteTS(x), to T czyta x; wartość
ReadTS(x)= max(TS(T),ReadTS(x))
T chce pisać do x
jeśli TS(T) < WriteTS(x) lub TS(T) < ReadTS(x),
to T wycofywana i restartowana z nowym TS(T)
wpp T pisze do x; WriteTS(x)=TS(T)
dr Paweł Drozda
Metody znaczników czasowych (3)
Zasada zapisu Thomasa (modyfikacja
podstawowej metody)
T chce pisać do x
jeśli TS(T) < WriteTS(x) – można pominąć
operację zapisu do x (wartość jest przestarzała
– później uruchomiona transakcja
zmodyfikowała tą wartość)
pozostałe przypadki bez zmian
zapewnia szerszy wielodostęp
nie odrzuca transakcji z niepotrzebnymi
zapisami (tylko nie dokonuje zapisu)
dr Paweł Drozda
[ Pobierz całość w formacie PDF ]