Harmonogram wykonywania transakcji

Silniki baz danych w celu obsługi współbieżności transakcji wykorzystują harmonogramy.

Hipotetyczna sytuacja: W bazie danych są dwa zasoby A i B. W pewnym momencie do bazy danych przychodzą dwie transakcje do wykonania. A baza danych ma za zadanie stworzyć odpowiedni harmonogram.

Zilustrowanie sytuacji

Jak można wykonać te dwie transakcje równolegle?

Aby obsłużyć taką sytuację można wykorzystać harmonogram seryjny lub nieseryjny:

Seryjny (serial) – w tym typie harmonogramu wszystkie transakcje wykonywane są jedna po drugiej. Każda transakcja musi czekać na zakończenie poprzedniej:

Oczywiście możliwy jest też harmonogram, który rozpoczyna od drugiej transakcji i później przechodzi do pierwszej. Ale i w tym przypadku najpierw musi zostać wykonana cała transakcja druga a dopiero później pierwsza.

Nieseryjny (non-serial) – transakcje mogą być wykonywane jednocześnie – nie muszą czekać na zakończenie poprzedniej:

Więcej informacji na temat nieseryjnych harmonogramów znajdziesz tutaj.