logo

Właściwości ACID w DBMS

A transakcja to pojedyncza logiczna jednostka pracy, która uzyskuje dostęp do bazy danych i ewentualnie ją modyfikuje. Transakcje uzyskują dostęp do danych za pomocą operacji odczytu i zapisu.
Aby zachować spójność w bazie danych, przed i po transakcji przestrzegane są określone właściwości. Są to tzw KWAS nieruchomości.

Dla tych, którzy chcą opanować te koncepcje i osiągnąć sukces na egzaminach takich jak BRAMA , nasz Kurs GATE oferuje dogłębną eksplorację systemów zarządzania bazami danych. Omawiamy wszystko, od podstaw po zaawansowane tematy, zapewniając dokładne zrozumienie, które jest niezbędne do uzyskania wysokich wyników i praktycznego zastosowania

Atomowość:

Rozumiemy przez to, że albo cała transakcja odbywa się od razu, albo w ogóle nie następuje. Nie ma drogi pośredniej, co oznacza, że ​​transakcje nie zachodzą częściowo. Każda transakcja jest traktowana jako jedna jednostka i albo zostaje zakończona, albo w ogóle nie jest wykonywana. Obejmuje dwie następujące operacje.
Anulować : Jeśli transakcja zostanie przerwana, zmiany wprowadzone w bazie danych nie będą widoczne.
Popełniać : Jeśli transakcja zostanie zatwierdzona, wprowadzone zmiany będą widoczne.
Atomowość jest również znana jako „zasada wszystko albo nic”.



Rozważ następującą transakcję T składający się z T1 I T2 : Przelew 100 z konta X rozliczyć I .

Jeśli transakcja nie powiedzie się po zakończeniu T1 ale przed zakończeniem T2 .(powiedzmy po napisz(X) ale przedtem napisz (Y) ), wówczas kwota została odjęta X ale nie dodane I . Powoduje to niespójny stan bazy danych. Dlatego też, aby mieć pewność poprawności stanu bazy danych, transakcja musi zostać zrealizowana w całości.

Konsystencja:

Oznacza to, że należy zachować ograniczenia integralności, aby baza danych była spójna przed i po transakcji. Odnosi się do poprawności bazy danych. Odnosząc się do powyższego przykładu,
Należy zachować całkowitą kwotę przed i po transakcji.
Całkowity przed t występuje = 500 + 200 = 700 .
Całkowity po wystąpieniu T = 400 + 300 = 700 .
Dlatego baza danych jest spójny . Niespójność występuje w przypadku T1 kończy ale T2 kończy się niepowodzeniem. W rezultacie T jest niekompletny.

Izolacja:

Ta właściwość zapewnia możliwość jednoczesnego wystąpienia wielu transakcji bez powodowania niespójności stanu bazy danych. Transakcje zachodzą niezależnie, bez zakłóceń. Zmiany zachodzące w konkretnej transakcji nie będą widoczne dla żadnej innej transakcji, dopóki ta konkretna zmiana w tej transakcji nie zostanie zapisana w pamięci lub nie zostanie zatwierdzona. Ta właściwość zapewnia, że ​​jednoczesne wykonanie transakcji doprowadzi do stanu równoważnego stanowi osiągniętemu, gdy zostały one wykonane szeregowo w określonej kolejności.
Pozwalać X = 500, I = 500.
Rozważ dwie transakcje T I T.

Przypuszczać T został wykonany do Gotowy) i wtedy T'' zaczyna. W rezultacie następuje przeplatanie operacji, dzięki czemu T'' odczytuje prawidłową wartość X ale niepoprawna wartość I i suma obliczona przez
T’’: (X+Y = 50, 000+500=50, 500)
nie jest zatem zgodna z kwotą na koniec transakcji:
T: (X+Y = 50, 000 + 450 = 50, 450) .
Powoduje to niespójność bazy danych z powodu utraty 50 jednostek. Dlatego transakcje muszą odbywać się w izolacji, a zmiany powinny być widoczne dopiero po ich wprowadzeniu do pamięci głównej.

Trwałość:

Ta właściwość gwarantuje, że po zakończeniu realizacji transakcji aktualizacje i modyfikacje bazy danych zostaną zapisane na dysku i zostaną zachowane nawet w przypadku awarii systemu. Aktualizacje te stają się teraz trwałe i przechowywane w pamięci nieulotnej. Skutki transakcji nigdy zatem nie przepadają.

Kilka ważnych punktów:

Nieruchomość Odpowiedzialność za utrzymanie nieruchomości
Atomowość Menedżer transakcji
Konsystencja Programista aplikacji
Izolacja Menedżer kontroli współbieżności
Trwałość Menedżer odzyskiwania

The KWAS właściwości łącznie zapewniają mechanizm zapewniający poprawność i spójność bazy danych w taki sposób, że każda transakcja stanowi grupę operacji, która działa jak pojedyncza jednostka, daje spójne wyniki, działa w oderwaniu od innych operacji i aktualizuje to sprawia, że ​​są trwale przechowywane.

Właściwości ACID to cztery kluczowe cechy, które definiują niezawodność i spójność transakcji w systemie zarządzania bazami danych (DBMS). Akronim ACID oznacza atomowość, konsystencję, izolację i trwałość. Oto krótki opis każdej z tych właściwości:

  1. Niepodzielność: Niepodzielność gwarantuje, że transakcja jest traktowana jako pojedyncza, niepodzielna jednostka pracy. Albo wszystkie operacje w ramach transakcji zostały zakończone pomyślnie, albo żadna z nich nie. Jeśli jakakolwiek część transakcji zakończy się niepowodzeniem, cała transakcja zostanie przywrócona do pierwotnego stanu, zapewniając spójność i integralność danych.
  2. Spójność: Spójność zapewnia, że ​​transakcja przenosi bazę danych z jednego spójnego stanu do innego spójnego stanu. Baza danych jest w spójnym stanie zarówno przed, jak i po realizacji transakcji. Aby zapewnić spójność danych, należy zachować ograniczenia, takie jak klucze unikalne i klucze obce.
  3. Izolacja: Izolacja zapewnia możliwość jednoczesnego wykonywania wielu transakcji bez wzajemnej interferencji. Każda transakcja musi być odizolowana od innych transakcji do czasu jej zakończenia. Ta izolacja zapobiega brudnym odczytom, niepowtarzalnym odczytom i fantomowym odczytom.
  4. Trwałość: Trwałość gwarantuje, że po zatwierdzeniu transakcji zmiany w niej zawarte będą trwałe i przetrwają wszelkie późniejsze awarie systemu. Zmiany transakcji zostają trwale zapisane w bazie danych i nawet w przypadku awarii systemu zmiany pozostają nienaruszone i można je odzyskać.

Ogólnie rzecz biorąc, właściwości ACID zapewniają ramy zapewniające spójność, integralność i niezawodność danych w systemie DBMS. Zapewniają, że transakcje są realizowane w sposób niezawodny i spójny, nawet w przypadku awarii systemu, problemów z siecią lub innych problemów. Te właściwości sprawiają, że DBMS jest niezawodnym i wydajnym narzędziem do zarządzania danymi we współczesnych organizacjach.

Zalety właściwości ACID w DBMS:

  1. Spójność danych: Właściwości ACID zapewniają, że dane pozostają spójne i dokładne po wykonaniu każdej transakcji.
  2. Integralność danych: Właściwości ACID utrzymują integralność danych, zapewniając, że wszelkie zmiany w bazie danych są trwałe i nie mogą zostać utracone.
  3. Kontrola współbieżności: Właściwości ACID pomagają zarządzać wieloma transakcjami zachodzącymi jednocześnie, zapobiegając zakłóceniom między nimi.
  4. Odzyskiwanie: Właściwości ACID zapewniają, że w przypadku jakiejkolwiek awarii lub awarii system może odzyskać dane aż do momentu awarii lub awarii.

Wady właściwości ACID w DBMS:

  1. Wydajność: Właściwości ACID mogą powodować wzrost wydajności w systemie, ponieważ wymagają dodatkowego przetwarzania w celu zapewnienia spójności i integralności danych.
  2. Skalowalność: Właściwości ACID mogą powodować problemy ze skalowalnością w dużych systemach rozproszonych, w których jednocześnie odbywa się wiele transakcji.
  3. Złożoność: wdrożenie właściwości ACID może zwiększyć złożoność systemu i wymagać znacznej wiedzy specjalistycznej i zasobów.
    Ogólnie rzecz biorąc, zalety właściwości ACID w DBMS przewyższają wady. Zapewniają rzetelne i spójne podejście do danych
  4. zarządzania, zapewniając integralność, dokładność i niezawodność danych. Jednak w niektórych przypadkach obciążenie związane z implementacją właściwości ACID może powodować problemy z wydajnością i skalowalnością. Dlatego ważne jest, aby zrównoważyć zalety właściwości ACID ze specyficznymi potrzebami i wymaganiami systemu.