Site icon Java blog

SQL #4: Transakcje, ACID i poziomy izolacji

sql transactions

Transakcja

Jest to zbiór operacji na bazie danych, które stanowią pewną całość. Powinny zostać wykonane wszystkie albo żadna z nich. Nie ma mowy o częściowym wykonaniu. Warunki jakie powinny spełniać transakcje są dokładniej opisane w zasadach ACID. Przykładem transakcji może być dokonywanie przelewu bankowego.

W tym kursie przedstawione zostanie działanie transakcji w PostgreSQL. W tym języku transakcje opisane są poprzez trzy frazy:

ACID

ACID definiuje warunki jakie transakcja musi spełnić.

Zjawiska niepożądane

Poziomy izolacji

Każdy silnik bazodanowy posiada różne strategie oddziaływania na siebie wielu transakcji. Można je traktować jak synchronizację wątków w Javie.

Wyróżnia się następujące poziomy izolacji transakcji:

Linki do dokumentacji PostgreSQL:

https://www.postgresql.org/docs/current/sql-start-transaction.html

https://www.postgresql.org/files/developer/transactions.pdf

Exit mobile version