ACID (Atomicity, Consistency, Isolation, Durability)



atomaarsus, konsistentsus, isoleeritus, püsivus Andmebaasihaldurite puhul tehingutöötluse põhikarakteristikud. Ilma nendeta ei saa tagada andmebaasihalduri töökindlust.
  • Atomaarsus tähendab seda, et andmebaasihaldur tagab kas antud tehingu kõigi tegumite või mitte ühegi toimumise. Näit. pangaülekande puhul peab toimuma nii ühe arve debiteerimine kui teise arve krediteerimine või ei tohi toimuda kumbagi
  • Konsistentsus tähendab, et pärast tehingu lõppu peab andmebaas olema legaalses olekus, s.t. tehing ei tohi rikkuda andmebaasi terviklusnõudeid. Kui terviklusnõue näeb ette, et mõlemal pangaarvel peab olema positiivne saldo, siis seda nõuet rikkuvad tehingud aborditakse
  • Isoleeritus tähendab, et tehing toimub varjatult teiste operatsioonide eest, s.t. ükski teine operatsioon ei saa näha vahepealses olekus olevaid andmeid. Pangateller näeb ülekantavat summat kas ühel arvel või teisel arvel, aga mitte kunagi mõlemal arvel korraga. Formaalselt tähendab see, et tehingu ajalugu on järjestatav
  • Püsivus tähendab seda, et kui kasutajat on juba kord teavitatud tehingu edukast toimumisest, siis tehing jääb kehtima ja seda ei saa olematuks muuta. See tähendab, et tehing elab üle ka süsteemi rikked ning et andmebaasihaldur on kontrollinud terviklusepiiranguid ja puudub vajadus tehingu abortimiseks. Harilikult kirjutatakse kõik tehingud logisse, mida saab "tagasi kerida" ja taastada vahetult rikke-eelse oleku. Tehingu saab lugeda toimunuks ainult siis, kui see on logisse kantud