Skip to Content

Wat is Database ACID?

ACID is een acroniem voor de vier belangrijkste eigenschappen van een database: atoomheid, consistentie, isolatie en duurzaamheid. Het wordt vaak geassocieerd met relationele databases, maar een NoSQL (niet-relationele) database kan ook de ACID-regels volgen. ACID-transacties zijn gebruikelijk in veel van de populaire database-engines die op de markt beschikbaar zijn, en ze zorgen ervoor dat lees- en schrijfacties de integriteit van uw data niet verstoren.

Wat is Database ACID?

Een database die de best practices van ACID volgt, heeft de volgende kenmerken:

  • Atomiciteit: Voorkom dataverlies, verweesde records en gedeeltelijke transacties met atoomkracht. Een database met atoomkracht biedt "alles of niets"-transacties, zodat u geen data verliest als een deel van een transactie midstream uitvalt.
  • Consistentie: Tabelbeperkingen in ACID-databases vereisen dat alle transacties data in een consistent formaat opslaan.
  • Isolatie: Een ACID-database zorgt ervoor dat de transacties geen vuile reads of writes opleveren door data te isoleren en transacties één voor één uit te voeren.
  • Duurzaamheid: Systeemstoring (bijv. een stroomstoring) kan transacties verstoren, dus een ACID-database zorgt ervoor dat failover dataverlies door een kritieke gebeurtenis voorkomt.

Atomiciteit

Moderne databasetransacties hebben meer dan één stap om een record af te ronden. Een klant kan bijvoorbeeld een order aanmaken, dus een opgeslagen procedure gebruikt een INSERT-statement om een record toe te voegen aan de orders en products_ordered tabellen. Als het toevoegen van een record aan de ordertabel mislukt, dan wilt u geen record toevoegen aan de tabel products_ordered. Dit zou een verweesd record creëren.

Met atoomkracht keert de database alle transacties terug wanneer er een faalt, zodat de data consistent blijven en corruptie wordt voorkomen. Alleen wanneer alle stappen in een transactie met succes zijn voltooid, worden de gegevens opgeslagen. Atomiciteit vermijdt datacorruptie, dataverlies en verweesde records.

Consistentie

Relationele databases hebben beperkingen waardoor alleen specifieke soorten data kunnen worden opgeslagen. NoSQL-databases slaan data op met hun eigen ingestelde formaat. Als u bijvoorbeeld specificeert dat alleen een decimaal getal kan worden opgeslagen in een kolom voor het totaal van de bestelling, dan zal een poging om een string op te slaan resulteren in een storing. Het consistent houden van data biedt ontwikkelaars een bekende waarde wanneer ze met een dataset werken.

Consistentie in een database betekent dat data kunnen worden voorspeld, wat betekent dat u weet of u data voor een bepaald record ophaalt, u een verwacht resultaat krijgt. Aan de hand van het voorbeeld van de ordertabel weet u dat u een decimale waarde zult ontvangen voor elke query die een waarde ophaalt uit de totale kolom van de order.

Isolatie

Vuile lees- en schrijfbewerkingen vinden plaats wanneer een gebruiker een query uitvoert op het specifieke moment waarop de database ook wijzigingen in een waarde aanbrengt. Als u bijvoorbeeld het totaal voor alle bestellingen voor de maand wilt weten, kunt u een onjuist resultaat krijgen als u gegevens leest op het moment dat het totaal van een bestelling wordt bijgewerkt. Hetzelfde kan gebeuren met schrijfacties als data worden gelezen voordat een eerdere updateverklaring kan worden uitgevoerd. 

Vuil lezen en schrijven kan uw data beschadigen en de data-integriteit vernietigen. Geïsoleerde transacties voeren overzichten één voor één uit, zodat data consistent en ononderbroken blijven, zelfs met miljoenen dagelijkse transacties. Geïsoleerde transacties kunnen records vergrendelen, wijzigingen aanbrengen en vervolgens records vrijgeven voor de volgende transactie.

Duurzaamheid

Zowel gestructureerde als ongestructureerde databases moeten data consistent en permanent opslaan nadat een transactie is voltooid, zelfs als er een systeemstoring optreedt. Transactielogs en infrastructuurstoringen moeten ook worden geïmplementeerd, maar de database zelf moet in staat zijn om data consistent en zonder enige datacorruptie op te slaan. Database-engines hebben hun eigen strategieën en failover-technieken, maar beheerders moeten erop kunnen vertrouwen om data te herstellen.

Een stroomstoring kan bijvoorbeeld halverwege een transactie onderbreken. Of de beheerder nu transacties moet terugdraaien of data moet herstellen, de database moet de storing kunnen afhandelen. Voor de meeste beheerders wordt failover ook afgehandeld met back-ups en redundantie. ACID kan helpen met de grotere disaster recovery-strategie van een organisatie. 

Conclusie

Bedrijfskritische databases hebben ACID-eigenschappen nodig om bedrijfsapplicaties te ondersteunen. ACID-eigenschappen zijn essentieel voor de data-integriteit en om ervoor te zorgen dat uw data door zoveel applicaties als u wilt kunnen worden opgehaald en gebruikt. Beheerders moeten nog steeds back-ups maken en ervoor zorgen dat de databaseserver soepel werkt, maar het hebben van ACID-eigenschappen is van cruciaal belang voor de bedrijfscontinuïteit.

11/2024
Pure Storage Cloud for Azure VMware Solution
Shrink your Azure VMware costs with Pure Storage Cloud, a suite of enterprise-grade data services by Pure Storage.
Solution Brief
4 pagina's
NEEM CONTACT MET ONS OP
Vragen, opmerkingen?

Hebt u een vraag of opmerking over Pure-producten of certificeringen?  Wij zijn er om te helpen.

Een demo inplannen

Plan een livedemo in en zie zelf hoe Pure kan helpen om jouw data in krachtige resultaten om te zetten. 

Bel ons: 31 (0) 20-201-49-65

Media: pr@purestorage.com

 

Pure Storage

Herikerbergweg 292

1101 CT . Amsterdam Zuidoost

The Netherlands

info@purestorage.com

Sluiten
Uw browser wordt niet langer ondersteund!

Oudere browsers vormen vaak een veiligheidsrisico. Om de best mogelijke ervaring te bieden bij het gebruik van onze site, dient u te updaten naar een van deze nieuwste browsers.