EN transaktion er en enkelt logisk arbejdsenhed, der tilgår og muligvis ændrer indholdet af en database. Transaktioner får adgang til data ved hjælp af læse- og skriveoperationer.
For at opretholde konsistens i en database, før og efter transaktionen, følges visse egenskaber. Disse kaldes SYRE ejendomme.
For dem, der ønsker at mestre disse begreber og udmærke sig i eksamener som PORT , vores GATE kursus tilbyder en dybdegående udforskning af databasestyringssystemer. Vi dækker alt fra det grundlæggende til avancerede emner, hvilket sikrer en grundig forståelse, der er afgørende for høje scores og praktisk anvendelse
Atomicitet:
Med dette mener vi, at enten hele transaktionen foregår på én gang eller slet ikke sker. Der er ingen midtvejs, dvs. transaktioner sker ikke delvist. Hver transaktion betragtes som én enhed og løber enten til fuldførelse eller udføres slet ikke. Det involverer følgende to operationer.
— Abort : Hvis en transaktion afbrydes, er ændringer i databasen ikke synlige.
— Begå : Hvis en transaktion binder, er de foretagne ændringer synlige.
Atomicitet er også kendt som 'Alt eller intet-reglen'.
Overvej følgende transaktion T bestående af T1 og T2 : Overførsel af 100,- fra konto x til konto OG .

Hvis transaktionen mislykkes efter afslutning af T1 men før afslutning af T2 .( sige, efter skriv(X) men før skriv(Y) ), så er beløbet trukket fra x men ikke tilføjet OG . Dette resulterer i en inkonsistent databasetilstand. Derfor skal transaktionen udføres i sin helhed for at sikre korrektheden af databasetilstanden.
Konsistens:
Det betyder, at integritetsbegrænsninger skal opretholdes, så databasen er konsistent før og efter transaktionen. Det refererer til korrektheden af en database. Med henvisning til eksemplet ovenfor,
Det samlede beløb før og efter transaktionen skal bibeholdes.
Total før T forekommer = 500 + 200 = 700 .
Total efter T opstår = 400 + 300 = 700 .
Derfor er databasen konsekvent . Inkonsekvens forekommer i tilfælde T1 fuldfører men T2 fejler. Som følge heraf er T ufuldstændig.
Isolation:
Denne egenskab sikrer, at flere transaktioner kan forekomme samtidigt uden at føre til inkonsistens i databasetilstanden. Transaktioner foregår uafhængigt uden indblanding. Ændringer, der forekommer i en bestemt transaktion, vil ikke være synlige for nogen anden transaktion, før den pågældende ændring i den pågældende transaktion er skrevet i hukommelsen eller er blevet begået. Denne egenskab sikrer, at udførelse af transaktioner samtidigt vil resultere i en tilstand, der svarer til en tilstand, der er opnået, disse blev udført serielt i en eller anden rækkefølge.
Lade x = 500, OG = 500.
Overvej to transaktioner T og T.

Formode T er henrettet indtil Læs (Y) og så T'' starter. Som følge heraf finder sammenfletning af operationer sted på grund af hvilket T'' læser den korrekte værdi af x men den forkerte værdi af OG og sum beregnet af
T’’: (X+Y = 50, 000+500=50, 500)
er således ikke i overensstemmelse med summen ved transaktionens afslutning:
T: (X+Y = 50, 000 + 450 = 50, 450) .
Dette resulterer i databaseinkonsistens på grund af et tab på 50 enheder. Derfor skal transaktioner foregå isoleret, og ændringer bør kun være synlige, efter at de er blevet foretaget i hovedhukommelsen.
Holdbarhed:
Denne egenskab sikrer, at når transaktionen er gennemført, bliver opdateringerne og ændringerne til databasen gemt på og skrevet til disken, og de fortsætter, selvom der opstår en systemfejl. Disse opdateringer bliver nu permanente og gemmes i ikke-flygtig hukommelse. Virkningerne af transaktionen går således aldrig tabt.
Nogle vigtige punkter:
| Ejendom | Ansvar for vedligeholdelse af ejendomme |
|---|---|
| Atomicitet | Transaktionsleder |
| Konsistens | Applikationsprogrammør |
| Isolation | Concurrency Control Manager |
| Holdbarhed | Recovery Manager |
Det SYRE egenskaber i sin helhed giver en mekanisme til at sikre korrektheden og konsistensen af en database på en sådan måde, at hver transaktion er en gruppe af operationer, der fungerer som en enkelt enhed, producerer ensartede resultater, fungerer isoleret fra andre operationer og opdaterer, det gør er holdbart opbevaret.
ACID-egenskaber er de fire nøglekarakteristika, der definerer pålideligheden og konsistensen af en transaktion i et Database Management System (DBMS). Akronymet ACID står for Atomicity, Consistency, Isolation og Durability. Her er en kort beskrivelse af hver af disse egenskaber:
- Atomicitet: Atomicitet sikrer, at en transaktion behandles som en enkelt, udelelig arbejdsenhed. Enten er alle operationerne i transaktionen gennemført med succes, eller også er ingen af dem. Hvis en del af transaktionen mislykkes, rulles hele transaktionen tilbage til sin oprindelige tilstand, hvilket sikrer datakonsistens og integritet.
- Konsistens: Konsistens sikrer, at en transaktion tager databasen fra en konsistent tilstand til en anden konsistent tilstand. Databasen er i en konsistent tilstand både før og efter transaktionen er udført. Begrænsninger, såsom unikke nøgler og fremmednøgler, skal opretholdes for at sikre datakonsistens.
- Isolering: Isolation sikrer, at flere transaktioner kan udføres samtidigt uden at forstyrre hinanden. Hver transaktion skal isoleres fra andre transaktioner, indtil den er gennemført. Denne isolation forhindrer beskidte læsninger, ikke-gentagelige læsninger og fantomlæsninger.
- Holdbarhed: Holdbarhed sikrer, at når først en transaktion er begået, er dens ændringer permanente og vil overleve eventuelle efterfølgende systemfejl. Transaktionens ændringer gemmes permanent i databasen, og selvom systemet går ned, forbliver ændringerne intakte og kan gendannes.
Generelt giver ACID-egenskaber en ramme til at sikre datakonsistens, integritet og pålidelighed i DBMS. De sikrer, at transaktioner udføres på en pålidelig og konsistent måde, selv i tilfælde af systemfejl, netværksproblemer eller andre problemer. Disse egenskaber gør DBMS til et pålideligt og effektivt værktøj til styring af data i moderne organisationer.
Fordele ved ACID-egenskaber i DBMS:
- Datakonsistens: ACID-egenskaber sikrer, at dataene forbliver konsistente og nøjagtige efter enhver transaktionsudførelse.
- Dataintegritet: ACID-egenskaber bevarer dataenes integritet ved at sikre, at eventuelle ændringer i databasen er permanente og ikke kan gå tabt.
- Samtidig kontrol: ACID-egenskaber hjælper med at styre flere transaktioner, der forekommer samtidigt, ved at forhindre interferens mellem dem.
- Gendannelse: ACID-egenskaber sikrer, at systemet i tilfælde af fejl eller nedbrud kan gendanne dataene indtil fejl- eller nedbrudspunktet.
Ulemper ved ACID-egenskaber i DBMS:
- Ydeevne: ACID-egenskaberne kan forårsage en ydeevneoverhead i systemet, da de kræver yderligere behandling for at sikre datakonsistens og integritet.
- Skalerbarhed: ACID-egenskaberne kan forårsage skalerbarhedsproblemer i store distribuerede systemer, hvor flere transaktioner forekommer samtidigt.
- Kompleksitet: Implementering af ACID-egenskaberne kan øge kompleksiteten af systemet og kræve betydelig ekspertise og ressourcer.
Samlet set opvejer fordelene ved ACID-egenskaber i DBMS ulemperne. De giver en pålidelig og ensartet tilgang til data - styring, der sikrer dataintegritet, nøjagtighed og pålidelighed. I nogle tilfælde kan omkostningerne ved implementering af ACID-egenskaber dog forårsage problemer med ydeevne og skalerbarhed. Derfor er det vigtigt at balancere fordelene ved ACID-egenskaber mod de specifikke behov og krav til systemet.
