Isolation

Forfatter: Lewis Jackson
Oprettelsesdato: 10 Kan 2021
Opdateringsdato: 25 Juni 2024
Anonim
Zach Diamond - Isolation (Official Video)
Video.: Zach Diamond - Isolation (Official Video)

Indhold

Definition - Hvad betyder isolering?

Isolering, i koder for databaser, specificerer hvornår og hvordan ændringerne implementeret i en operation bliver synlige for andre parallelle operationer. Transaktionsisolering er en vigtig del af ethvert transaktionssystem. Den omhandler konsistens og fuldstændighed af data hentet ved forespørgsler, der ikke påvirker en brugerdata af andre brugerhandlinger. En database erhverver låse på data for at opretholde et højt niveau af isolering.

En introduktion til Microsoft Azure og Microsoft Cloud | Gennem denne vejledning lærer du, hvad cloud computing handler om, og hvordan Microsoft Azure kan hjælpe dig med at migrere og drive din virksomhed fra skyen.

Techopedia forklarer Isolation

Et antal isolationsniveauer er defineret for at kontrollere graden af ​​datalåsning. Et højt isolationsniveau kan resultere i at låse overhead for systemet skaber dødvande. De fire hovedisolationsniveauer er: Læs ikke tilladt: Dette niveau beskæftiger sig med beskidte læsninger, hvor de læste data ikke er i overensstemmelse med andre dele af tabellen eller forespørgslen og ikke er begået. Her læses data direkte fra tabelblokke uden nogen verifikation, validering og behandling. Derfor er dataene så beskidte, som de kan være. Læs forpligtet: I dette tilfælde er rækker, som en forespørgsel returnerer, rækker, der allerede er begået, da forespørgslen startede. Da engagement er afsluttet, inden forespørgslen startede, vises resultatet ikke i forespørgselens output. Gentaget læse: Rækkerne, der returneres af en forespørgsel i dette tilfælde, begås, da transaktionen blev startet. De foretagne ændringer er ikke til stede i transaktionen og vises derfor ikke i forespørgselsresultatet. Serialiserbar: På dette niveau forekommer transaktioner på en helt isoleret måde, serielt efter hinanden. Databaser som Oracle og Postgre SQL garanterer undertiden ikke seriel bestilling af transaktioner, men understøtter snapshot-isolering, hvor alle læsninger i en transaktion er ensartede snapshots af databasen og transaktionsforpligtelser kun, hvis ingen opdateringer producerer konflikter med andre samtidige opdateringer foretaget siden snapshot. Anomalier, der er tilladt ved snapshot-isolationer, kan føre til krænkelse af datakonsistensen ved sammenflettede transaktioner, der opretholder konsistensen. Disse anomalier kan fjernes ved at indføre opdateringskonflikter eller kunstig låsning. Alle databaser tillader brugere at indstille deres standardisolationsniveauer. Perfekte isolationsniveauer, der er valgt, forhindrer, at applikationer introducerer fejl som snavsede læsninger, gentagne læsninger og fantomlæsninger. Når den første transaktion læser uforpligtede ændringer foretaget af den anden transaktion, giver den anledning til beskidte aflæsninger. Når en læst data forbliver den samme, hvis den læses igen under den samme transaktion, er det en gentagelig læsning. Fantomlæsninger opstår, når nye poster, der er tilføjet, påpeges af transaktioner inden indsættelse. De forskellige databaselåseisolationsniveauer, der håndteres, er: Læselåse: Læselåse forhindrer ændring af data, der læses under en transaktion, indtil transaktionen slutter, hvilket fjerner tilfælde af gentagne læse. Andre transaktioner kan læse disse data, men der gives ingen adgang til skrivning eller ændring. Skriv låse: Skrivelåse forhindrer andre transaktioner i at ændre data, indtil transaktionen afsluttes. Eksklusive skrivelåse: Eksklusiv skrivelås forhindrer andre transaktioner i at læse eller ændre data, indtil den aktuelle transaktion slutter. Snapshots: Et snapshot er et frossent billede af dataene, når transaktionen starter. Det forhindrer beskidte læsninger, ikke-gentagne læsninger og fantomlæsninger. Denne definition blev skrevet i koden til databaser