|
|||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
Transakcja - zbiór operacji na bazie danych, które stanowią w istocie pewną całość i jako takie powinny być wykonane wszystkie lub żadna z nich. Warunki jakie powinny spełniać transakcje szczegółowiej opisują zasady ACID (Atomicity, Consistency, Isolation, Durability - Atomowość, Spójność, Izolacja, Trwałość). Przykładem transakcji może być transakcja bankowa jaką jest przelew. Muszą tu zostać dokonane 2 operacje - zabranie pieniędzy z jednego konta oraz dopisanie ich do drugiego. W przypadku niepowodzenia żadna z tych operacji nie powinna być zatwierdzona, gdyż zajście tylko jednej powodowałoby nieprawidłowości w bazie danych (pojawienie się lub zniknięcie pieniędzy). Transakcja składa się zawsze z 3 etapów:
W systemach bazodanowych istotne jest, aby transakcja trwała jak najkrócej, ponieważ równolegle może być dokonywanych wiele transakcji i część operacji musi zostać wykonana w pewnej kolejności. Każdy etap transakcji jest logowany, dzięki czemu w razie awarii systemu (dzięki zawartości logów), można odtworzyć stan bazy danych sprzed transakcji, która nie została zamknięta. edytuj Transakcje w systemach plikówW przypadku systemu plików (który też jest pewnego rodzaju bazą danych) transakcje mogą być realizowane poprzez wbudowany w system obsługi plików mechanizm księgowania, który gwarantuje stabilność struktury plików, nawet w sytuacji zawieszenia całego systemu operacyjnego. Sam zapis do plików nie jest najczęściej wykonywany transakcyjnie, gdyż byłoby to zbyt kosztowne rozwiązanie. Istnieją jednak metody transakcyjnego zapisu danych do systemu plików. Przykład prostej procedury transakcyjnej w systemach plikowych:
|
| All Right Reserved © 2007, Designed by Stylish Blog. |