Metody optymistyczne-opracowanie

Nasza ocena:

3
Wyświetleń: 511
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Metody optymistyczne-opracowanie - strona 1 Metody optymistyczne-opracowanie - strona 2

Fragment notatki:

Metody optymistyczne.
Metody optymistyczne współbieżnej realizacji operacji na BD polegają na synchronizacji transakcji. Do metod tych zaliczamy metodę opartą o etykiety - znaczniki czasowe oraz metody tzw. walidacji. Metoda optymistyczna nie traci czasu na blokady oraz na ich usuwanie. Czas poświęcony na powtórzenie transakcji, które muszą zostać odrzucone może być znacznie krótszy niż czas zużyty na oczekiwanie na blokady lub usuwanie impasu. Metoda optymistyczna jest efektywna pod warunkiem, że małe jest prawdopodobieństwo konfliktu dwóch transakcji. Szansa wzajemnego oddziaływania dwóch transakcji wykonywanych w tym samym czasie jest mała pod warunkiem, że każda z nich ma dostęp tylko do drobnego fragmentu BD. Dla omawianych metod niejako zakłada się wprowadzenie uporządkowania sekwencyjnego i wykrywania jego naruszeń. Efekt taki można uzyskać jeśli posiada się system tworzenia tzw. znaczników czasowych (timestemps). Znaczniki czasowe są nadawane pojawiającym się transakcjom do obsługi. Znaczniki czasowe są liczbami generowanymi w każdym takcie zegara. Takty wewnętrznego zegara komputera występują z tak dużą częstotliwością, że dowolne dwa zdarzenia (np. zgłoszenie transakcji) nie mogą zajść w tym samym takcie. Wynika stąd, że każdej transakcji nadaje się inny znacznik czasowy, który jest bieżącym czasem zegara. Znacznik czasowy nadajemy w chwili inicjalizacji transakcji lub w momencie jej odczytu lub zapisu na dysk. Żadne dwie transakcje nie mają tego samego znacznika czasowego. Za kryterium poprawności sposobu ich przyporządkowania przyjmujemy, że transakcje powinny zachowywać się tak, jak gdyby kolejność ich znaczników była uporządkowaniem sekwencyjnym transakcji. Znaczniki liczbowe będą dużymi liczbami. Dla większości zastosowań wystarczy 16 - bitowy znacznik czasowy dla każdej transakcji. Rozważymy teraz w jaki sposób za pomocą znaczników czasowych zmusza się nie odrzucone transakcje do tego, by zachowywały się tak, jak gdyby były wykonywane sekwencyjnie. Dla każdej jednostki BD zapamiętuje się dwa czasy:
czas odczytu - największy znacznik czasowy należący do dowolnej transakcji odczytującej tę jednostkę.
czas zapisu - największy znacznik należący do dowolnej transakcji zapisującej tę jednostkę.
Robiąc to można uzyskać wrażenie, że transakcji wykonywana jest w jednej chwili wskazywanej przez jej znacznik czasowy. Znaczniki czasowe przypisane transakcji i zapamiętywanie czasów odczytu i zapisu służą do sprawdzenia, czy nie zdarza się nic fizycznie niemożliwego. nie jest możliwe by transakcja mogła odczytać wartość jednostki, jeśli tę jednostkę zapisano już po wykonaniu tej transakcji. Inaczej mówiąc transakcja ze znacznikiem czasowym t1 nie może odczytać jednostki o czasie zapisu t2 takim, że t2 t1.Jeśli transakcja chce tego dokonać, to należy ja odrzucić i ponownie rozpocząć. (1)
... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz