transakce je jediná logická jednotka práce, která přistupuje a případně upravuje obsah databáze. Transakce přistupují k datům pomocí operací čtení a zápisu.
aby byla zachována konzistence v databázi, před a po transakci, jsou dodržovány určité vlastnosti. Ty se nazývají kyselé vlastnosti.

Atomicity
Tím myslíme, že buď celá transakce se odehrává najednou, nebo se to nestane vůbec. Neexistuje žádná střední cesta, tj., transakce se nevyskytují částečně. Každá transakce je považována za jednu jednotku a buď běží k dokončení, nebo není vůbec provedena. Zahrnuje následující dvě operace.
– Abort: pokud dojde k přerušení transakce, změny provedené v databázi nejsou viditelné.
– Commit: pokud se transakce zavazuje, provedené změny jsou viditelné.
Atomicita je také známá jako pravidlo „vše nebo nic“.

zvažte následující transakci t sestávající z T1 a T2: převod 100 z účtu X na účet y.,

Pokud transakce selže po dokončení T1, ale před dokončením T2.(řekněme, po zápisu (X), ale před zápisem (Y)), pak částka byla odečtena od X, ale nebyla přidána do Y.to má za následek nekonzistentní stav databáze. Proto musí být transakce provedena v plném rozsahu, aby byla zajištěna správnost stavu databáze.

konzistence
to znamená, že omezení integrity musí být zachována tak, aby databáze byla konzistentní před a po transakci. Odkazuje na správnost databáze., S odkazem na výše uvedený příklad musí být zachována celková částka před a po transakci.
Celkem před T nastane = 500 + 200 = 700.
Celkem po t nastane = 400 + 300 = 700.
proto je databáze konzistentní. Nekonzistence nastane v případě, že T1 dokončí, ale T2 selže. V důsledku toho je t neúplná.

izolace
tato vlastnost zajišťuje, že k více transakcím může dojít současně, aniž by to vedlo k nekonzistenci stavu databáze. Transakce probíhají nezávisle bez rušení., Změny vyskytující se v konkrétní transakci nebudou viditelné pro žádnou jinou transakci, dokud nebude tato konkrétní změna v této transakci zapsána do paměti nebo nebyla spáchána. Tato vlastnost zajišťuje, že provádění transakcí současně vyústí ve stavu, který odpovídá stavu dosaženo, tyto byly provedeny sériově v některých pořadí.
Nechť X= 500, Y = 500.
zvažte dvě transakce T A T“.

Předpokládejme, že T má být popraven, než Číst (Y) a pak T“ začíná., Jako výsledek , prokládání operací probíhá díky které T“ čte správnou hodnotu X, ale nesprávné hodnoty Y a částky vypočtené podle
T“: (X+Y = 50, 000+500=50, 500)
tudíž není v souladu s součet na konci transakce:
T: (X+Y = 50, 000 + 450 = 50, 450).
to má za následek nekonzistenci databáze v důsledku ztráty 50 jednotek. Transakce proto musí probíhat izolovaně a změny by měly být viditelné až poté, co byly provedeny do hlavní paměti.,

trvanlivost:
tato vlastnost zajišťuje, že po dokončení transakce jsou aktualizace a úpravy databáze uloženy a zapsány na disk a přetrvávají, i když dojde k selhání systému. Tyto aktualizace se nyní stávají trvalými a jsou uloženy v energeticky nezávislé paměti. Účinky transakce tak nejsou nikdy ztraceny.,

ACID vlastnosti, v celku, poskytují mechanismus pro zajištění správnosti a konzistence databáze takovým způsobem, že každá transakce je skupina operací, která se chová jako jeden celek, vytváří konzistentní výsledky, působí v izolaci od ostatních operací a aktualizace, které to činí, jsou trvale uloženy.

tento článek je přispěl Avneet Kaur. Pokud se vám líbí GeeksforGeeks a chtěli byste přispět, můžete také napsat článek pomocí contribute.geeksforgeeks.org nebo napište svůj článek na [email protected]., Podívejte se na svůj článek, který se objeví na hlavní stránce GeeksforGeeks a pomůže ostatním geekům.