ACID
Staat voor "Atomicity, Consistency, Isolation, Durability." Het acroniem ACID beschrijft vier eigenschappen die een database moet hebben om de integriteit van gegevens te waarborgen. Deze eigenschappen gelden specifiek voor databasebewerkingen waarbij gegevens naar de database worden geschreven. Voorbeelden hiervan zijn het invoegen, bijwerken en verwijderen van records.
De vier ACID-elementen worden hieronder beschreven:
1. Atomiciteit
Atomiciteit garandeert dat elke transactie een gebeurtenis van het type "alles-of-niets" is. Met andere woorden: de transactie slaagt volledig of mislukt volledig. Atomiciteit voorkomt beschadiging van gegevens door gedeeltelijke transacties niet toe te staan. Als een bewerking niet kan worden voltooid, wordt deze "teruggedraaid" naar de vorige toestand, alsof deze nooit heeft plaatsgevonden.
2. Consistentie
Consistentie houdt in dat alleen geldige gegevens naar een database worden geschreven. Een database accepteert bijvoorbeeld geen ongeldige transacties of onherkenbare gegevens. Daarnaast kan de database een zogenaamde "doublewrite-buffer" gebruiken waarin nieuwe transacties tijdelijk worden opgeslagen. Als de database of het hostsysteem onverwacht crasht, kunnen de gegevens uit de buffer worden hersteld.
3. Isolatie
Isolatie zorgt ervoor dat elke transactie afzonderlijk wordt verwerkt. Sommige databases lezen en schrijven meerdere keren per seconde gegevens, waardoor gelijktijdige transacties nodig kunnen zijn. Zelfs wanneer transacties tegelijkertijd plaatsvinden, kunnen ze van elkaar geïsoleerd blijven. Als bijvoorbeeld één bewerking mislukt, heeft dit geen invloed op andere bewerkingen die op hetzelfde moment plaatsvinden. Isolatie is ook essentieel voor databasebeveiliging, omdat hierdoor wordt voorkomen dat de gegevens in de ene transactie zichtbaar zijn voor een andere transactie.
4. Duurzaamheid
Duurzaamheid garandeert dat gegevens worden opgeslagen nadat een transactie is verwerkt of aan de database is "toegewezen". Hiervoor moeten gegevens naar niet-vluchtig geheugen worden geschreven, zodat transacties niet verloren gaan als een toepassing crasht of er een stroomstoring optreedt.
Hoewel databasesoftware kan helpen om de duurzaamheid van een database te waarborgen, is ook de hardware belangrijk. Een RAID-opslagconfiguratie kan bijvoorbeeld redundantie bieden als een opslagapparaat uitvalt. Een UPS met batterijback-up kan gegevensverlies voorkomen door de stroomvoorziening in stand te houden als de primaire stroombron niet beschikbaar is.
NOTE: "Acid" (met kleine letters) is een test voor een webbrowser waarmee wordt gecontroleerd of een browser specifieke HTML-tags en CSS-regels ondersteunt. De meest recente test, Acid3, werd in 2008 gemaakt door de groep Web Standards Project.
Test je kennis