ACID: Atomic, Consistent, Isolated, & Durable

geplaatst in: Articles | 0

Ik denk niet dat het een overdrijving is om te zeggen dat gegevens vrij belangrijk zijn. Data is vooral belangrijk voor moderne organisaties. In feite ging The Economist zo ver om te zeggen dat de gegevens olie hebben overtroffen als ‘ s werelds meest waardevolle hulpbron, en dat was in 2017.

een van de problemen met gegevens is de enorme hoeveelheden ervan die dagelijks moeten worden verwerkt., Er vliegen tegenwoordig zoveel data over de hele wereld dat we een nieuwe term moeten bedenken om uit te drukken hoeveel data er is: big data. Zeker, het is niet de meest indrukwekkend klinkende term die er zijn, maar het feit blijft.

met al deze big data die er zijn, zoeken organisaties naar manieren om te verbeteren hoe ze het allemaal beheren vanuit een praktisch, computationeel en beveiligingsstandpunt. Zoals Spiderman ’s oom Ben ooit zei:” met grote komt grote verantwoordelijkheid.”De beste methode die de IT-wereld heeft gemaakt voor het navigeren door de complexiteit van data management is door het gebruik van databases.,

Wat is een Database?

Databases zijn gestructureerde gegevenssets die in computers worden opgeslagen. Vaak worden databases opgeslagen op volledige serverparken gevuld met computers die speciaal zijn gemaakt voor de verwerking van die gegevens en de processen die nodig zijn om er gebruik van te maken.

moderne databases zijn zulke complexe systemen dat managementsystemen zijn ontworpen om ze te verwerken. Deze database management systemen (DBMS) proberen de opslag en het ophalen van gegevens binnen databases te optimaliseren en te beheren.,

een van de leidende sterren die organisaties leidt naar succesvol databasebeheer is de ACID-benadering.

Wat is zuur?

in de context van de informatica is ACID (atomiciteit, consistentie, isolatie, duurzaamheid) een reeks leidende principes die ervoor kunnen zorgen dat databasetransacties betrouwbaar kunnen worden verwerkt. Een databasetransactie is elke handeling die binnen een database wordt uitgevoerd, zoals het aanmaken van een nieuw record of het bijwerken van gegevens binnen een database.

wijzigingen binnen een database moeten met zorg worden uitgevoerd om ervoor te zorgen dat de gegevens binnen niet beschadigd raken., Het toepassen van de ZUUREIGENSCHAPPEN op elke wijziging van een database is de beste manier om de nauwkeurigheid en betrouwbaarheid van een database te behouden. Laten we eens kijken naar elk bestanddeel van zuur.

Atomicity

in de context van databases betekent atomicity dat u zich verbindt tot het geheel van de transactie die plaatsvindt of dat u helemaal geen transactie hebt., In wezen zorgt een atomaire transactie ervoor dat elke commit die je maakt de hele operatie succesvol afmaakt of, in het geval dat de verbinding verloren gaat in het midden van een operatie, wordt de database teruggedraaid naar zijn status voordat de commit wordt gestart.

Dit is belangrijk om te voorkomen dat crashes of uitval gevallen creëren waarbij de transactie gedeeltelijk werd voltooid tot een onbekende algemene status. Als er een crash optreedt tijdens een transactie zonder atomiciteit, kunt u niet precies weten hoe ver het proces was voordat de transactie werd onderbroken., Door gebruik te maken van atomicity, zorgt u ervoor dat ofwel de gehele transactie succesvol is voltooid of niets ervan was.

consistentie

consistentie verwijst naar het handhaven van beperkingen inzake gegevensintegriteit. Een consistente transactie zal geen inbreuk maken op integriteitsbeperkingen die door de databankregels aan de gegevens worden opgelegd. Het afdwingen van consistentie zal ervoor zorgen dat als een database in een illegale staat terechtkomt (als er sprake is van een schending van gegevensintegriteitsbeperkingen) het proces zal worden afgebroken en de wijzigingen zullen worden teruggezet naar hun vorige, wettelijke staat.,

een andere manier om te zorgen voor consistentie binnen een database gedurende elke transactie is door ook declaratieve beperkingen op de database af te dwingen. Een voorbeeld van een declaratieve beperking kan zijn dat alle klantenaccounts een positief saldo moeten hebben. Als een transactie een klantaccount in een negatief saldo zou brengen, zou die transactie worden teruggedraaid. Dit zorgt ervoor dat wijzigingen succesvol zijn bij het handhaven van de integriteit van de gegevens of ze worden volledig geannuleerd.,

isolatie

geïsoleerde transacties worden beschouwd als “serialiseerbaar”, wat betekent dat elke transactie in een afzonderlijke volgorde plaatsvindt zonder dat er transacties in tandem plaatsvinden. Elke leest of schrijft uitgevoerd op de database zal niet worden beïnvloed door andere leest en schrijft van afzonderlijke transacties die zich voordoen op dezelfde database. Een globale order wordt gecreëerd met elke transactie in de rij om ervoor te zorgen dat de transacties in hun geheel worden voltooid voordat een andere begint.

Dit betekent niet dat twee operaties niet tegelijkertijd kunnen plaatsvinden., Er kunnen meerdere transacties plaatsvinden zolang deze transacties geen invloed kunnen hebben op de andere transacties die tegelijkertijd plaatsvinden. Door dit te doen kan invloed hebben op de snelheid van de transacties als het kan dwingen veel operaties te wachten voordat ze kunnen initiëren. Echter, deze afweging is de toegevoegde beveiliging van gegevens die door isolatie waard.

isolatie kan worden bereikt door het gebruik van een glijdende schaal van permissiviteit die gaat tussen wat optimistische transacties en pessimistische transacties worden genoemd., Een optimistische transactieschema gaat ervan uit dat andere transacties worden voltooid zonder twee keer te lezen of te schrijven naar dezelfde plaats. Met de optimistische schema, beide transacties zullen worden afgebroken en opnieuw geprobeerd in het geval van een transactie raken dezelfde plaats twee keer.

het pessimistische transactieschema biedt minder vrijheid en zal middelen blokkeren in de veronderstelling dat transacties andere zullen beïnvloeden. Dit resulteert in minder abort en retries, maar betekent ook dat transacties vaker in de rij moeten wachten op hun beurt in vergelijking met de optimistische transactiebenadering., Het vinden van een sweet spot tussen deze twee idealen is vaak waar het beste algemene resultaat wordt gevonden.

duurzaamheid

Het Laatste aspect van de zure benadering van databasebeheer is duurzaamheid. Duurzaamheid zorgt ervoor dat wijzigingen in de database (transacties) die met succes worden gecommit permanent zullen overleven, zelfs in het geval van systeemstoringen. Dit zorgt ervoor dat de gegevens in de database niet worden beschadigd door service uitval, crashes of andere gevallen van storing., Dit wordt bereikt door het gebruik van changelogs waarnaar wordt verwezen wanneer databases (of delen van de database) worden herstart.

wanneer elk aspect van de ACID-aanpak met succes wordt samengebracht, worden databases onderhouden met de grootst mogelijke integriteit en beveiliging van gegevens om ervoor te zorgen dat ze waarde kunnen blijven leveren aan de organisatie. Een database met beschadigde gegevens kan kostbare problemen presenteren als gevolg van de enorme nadruk die organisaties leggen op hun gegevens voor zowel dag-tot-dag operaties evenals strategische analyse.,

het gebruik van ZUUREIGENSCHAPPEN met uw database zorgt ervoor dat uw database waardevolle gegevens blijft leveren gedurende de hele operaties.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *