Modelul bazei de date ACID

ACID Protejează datele bazei dvs. de date

Modelul ACID al designului bazei de date este unul dintre cele mai vechi și mai importante concepte ale teoriei bazelor de date. Acesta propune patru obiective pe care fiecare sistem de gestionare a bazelor de date trebuie să le depună: atomicitate, consistență, izolare și durabilitate. O bază de date relațională care nu reușește să îndeplinească oricare dintre aceste patru obiective nu poate fi considerată fiabilă. O bază de date care posedă aceste caracteristici este considerată ca fiind compatibilă cu ACID.

ACID Definit

Să luăm o clipă pentru a examina detaliile fiecăruia dintre aceste caracteristici:

Cum acționează ACID în practică

Administratorii de baze de date folosesc mai multe strategii pentru a aplica ACID.

Unul folosit pentru a impune atomicitatea și durabilitatea este înregistrarea în scriere înainte (WAL) în care orice detaliu al tranzacției este scris mai întâi într-un jurnal care include atât informații de redo, cât și de anulare a informațiilor.Acest lucru asigură că, având în vedere o eroare a bazei de date de orice fel, jurnalul și să compare conținutul acestuia cu starea bazei de date.

O altă metodă folosită pentru a aborda atomicitatea și durabilitatea este paginile de tip shadow în care este creată o pagină de umbră atunci când datele trebuie modificate. Actualizările interogării sunt scrise mai degrabă în pagina de umbră decât în ​​datele reale din baza de date. Baza de date însăși este modificată numai atunci când editarea este finalizată.

O altă strategie se numește protocolul de comitere în două faze , folositor în special în sistemele de baze de date distribuite. Acest protocol separă o cerere de modificare a datelor în două faze: o fază de solicitare de comitere și o fază de angajare. În faza de solicitare, toate DBMS-urile dintr-o rețea afectate de tranzacție trebuie să confirme că au primit-o și au capacitatea de a efectua tranzacția. După ce se primește confirmarea din toate DBMS-urile relevante, se completează faza de angajament în care datele sunt efectiv modificate.