Databázový model ACID

ACID chrání data vaší databáze

Model ACID návrhu databáze je jedním z nejstarších a nejdůležitějších pojmů databázové teorie. Stanovuje čtyři cíle, které musí každý systém řízení databáze usilovat o dosažení: atomicity, konzistence, izolace a trvanlivosti. Relační databáze, která nesplňuje některý z těchto čtyř cílů, nemůže být považována za spolehlivá. Databáze, která má tyto vlastnosti, se považuje za vyhovující požadavkům ACID.

ACID Definováno

Pojďme si chvíli podrobně prozkoumat každou z těchto charakteristik:

Jak funguje ACID v praxi

Správci databází používají několik strategií k prosazování ACID.

Jeden zvyklý na prosazování atomicity a trvanlivosti je zapisování zápisu dopředu (WAL), ve kterém je nejprve zapsán veškerý detail transakce do protokolu, který zahrnuje jak obnovu, tak i vrácení informací. Tím je zajištěno, že vzhledem k selhání databáze libovolného druhu může databáze kontrolovat protokol a porovnat jeho obsah se stavem databáze.

Další metodou, která se používá k řešení atomicity a trvanlivosti, je stínové stránkování, ve kterém je vytvořena stínová stránka, když mají být data modifikována. Aktualizace dotazu jsou zapsána na stínovou stránku spíše než na skutečná data v databázi. Databáze samotná je upravena pouze po dokončení úpravy.

Další strategie se nazývá protokol dvoufázového potvrzení , obzvláště užitečný v distribuovaných databázových systémech. Tento protokol odděluje požadavek na úpravu dat do dvou fází: fázi žádosti o potvrzení a fázi odběru. Ve fázi žádostí musí všechny DBMS v síti ovlivněné transakcí potvrdit, že je přijaly a mají schopnost provést transakci. Po obdržení potvrzení ze všech příslušných DBMS se dokončí fáze odběru, ve které jsou data skutečně změněna.