ACID
Z Wikipedii
ACID to pojęcie, dotyczące opisu warunków jakie powinny spełniać transakcje w bazach danych. ACID jest skrótem od angielskich słów: atomicity - atomowość, consistency - spójność, isolation - izolacja, durability - trwałość.
- atomowość transakcji oznacza, iż każda transakcja albo wykona się w całości, albo w ogóle, czyli np. jeżeli w ramach jednej transakcji odbywać ma się przelew bankowy (zmniejszenie wartości jednego konta i powiększenie innego o tę samą kwotę), to nie może zajść sytuacja, że z jednego konta ubędzie pieniędzy a kwota na docelowym będzie bez zmian, tylko albo przelew zostanie wykonany w całości, albo w ogóle
- spójność transakcji oznacza, że po wykonaniu transakcji system będzie spójny, czyli nie zostaną naruszone żadne ograniczenia integralnościowe
- izolacja transakcji oznacza, iż jeżeli dwie transakcje wykonują się współbieżnie, to zazwyczaj (zależnie od poziomu izolacji) nie widzą zmian przez siebie wprowadzanych. Poziom izolacji w bazach danych jest zazwyczaj konfigurowalny i określa jakich anomalii możemy się spodziewać przy wykonywaniu transakcji, przykładowe typy izolacji to:
- read uncommitted
- read committed
- repeatable read
- serializable
- trwałość danych oznacza, że system potrafi uruchomić się i udostępnić spójne i nienaruszone dane zapisane w ramach zatwierdzonych transakcji, na przykład po nagłej awarii zasilania.