Atomisk, konsistent, isolert, durabel
Innen informatikk er atomisitet, konsistens, isolasjon og durabilitet[1] (engelsk forkotelse: ACID) fire egenskaper for databasetransaksjoner som har til hensikt å garantere gyldige data til tross for strømbrudd, tekniske feil og andre uhell.[2]
I databaseøyemed kalles en sekvens av databaseoperasjoner som tilfredsstiller ACID-egenskapene (som kan oppfattes som en enkelt logisk operasjon på dataene) for en transaksjon. For eksempel kan en overføring av midler fra en bankkonto til en annen (selv om det involverer flere steg som å debitere en konto og kreditere en annen) anses som en enkelt transaksjon.
Historie
redigerI 1983[3] foreslo Andreas Reuter og Håkon Håkonsson forkortelsen ACID basert på tidligere arbeider av Jim Gray[4] som hadde foreslått atomisitet, konsistens og durabilitet (ACD - men ikke isolasjon) som egenskaper for transaksjoner. Disse fire egenskapene har vært viktige i utviklingen av databasesystemer.
Ifølge Gray og Reuter støttet IBM Information Management System ACID-transaksjoner allerede i 1973 (selv om forkortelsen først ble opprettet senere).[5]
Egenskaper
rediger- Atomisk: At en transaksjon enten fullføres fullstendig eller ikke i det hele tatt
- Konsistent (konsistensbevaring): Databasesystemet sikrer at en transaksjon bare kan ta databasen fra en konsistent tilstand til en annen
- Isolasjon (transaksjonsisolasjon): Databasesystemet sørger for at samtidige transaksjoner ikke forstyrrer hverandre, altså at de utføres isolert fra hverandre
- Durabilitet (permanent): At et databasesystem garanterer at transaksjoner som har blitt forpliktet (committed) overlever permanent i tilfelle krasj
Se også
redigerReferanser
rediger- ^ «Kompendium – Datamodellering og Database - TDT4145 Datamodellering og database (2019), Mathilde Haukø Haugum» (PDF). Arkivert fra originalen (PDF) 26. september 2022. Besøkt 15. mars 2023.
- ^ Lang, Niklas. «Database Basics: ACID Transactions». Besøkt 6. august 2022.
- ^ Haerder. «Principles of transaction-oriented database recovery»: 287.
- ^ (PDF) http://research.microsoft.com/~gray/papers/theTransactionConcept.pdf.
- ^ Gray, Jim; Reuter, Andreas (1993). Distributed Transaction Processing: Concepts and Techniques. Morgan Kaufmann. ISBN 1-55860-190-2.