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.

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.