Izolacijska lastnina v zbirki podatkov

Izolacija nadzira, kako in kdaj se spremembe izvajajo v podatkovni bazi

Izolacija je sestavni del transakcijskih lastnosti baze podatkov. To je tretja lastnost ACID (Atomicity, Consistency, Isolation, Durability) in te lastnosti zagotavljajo, da so podatki dosledni in točni.

Izolacija je lastnost na ravni baze podatkov, ki nadzira, kako in kdaj so spremembe izvedene, in če postanejo med seboj vidne. Eden od ciljev izolacije je omogočiti večkratne transakcije, ki se pojavljajo hkrati, ne da bi vplivali na izvajanje drugega.

Kako izolacija deluje

Če na primer Joe izda transakcijo proti bazi podatkov ob istem času, ko Mary izda drugačno transakcijo, morata obe transakciji delovati v bazi podatkov na izoliran način. Baza podatkov bi morala bodisi opraviti Joejevo celotno transakcijo pred izvršitvijo Mary's ali obratno. To preprečuje, da bi Joeova transakcija bral vmesnih podatkov, ki so nastali kot stranski učinek dela transakcije Mary, ki se sčasoma ne bo zavezala k bazi podatkov. Upoštevajte, da izolacijska lastnost ne zagotavlja, katere transakcije bodo izvršile najprej, zgolj zato, da se ne bodo vmešavale med seboj.

Izolacijske stopnje

Obstajajo štiri ravni izolacije:

  1. Serializable je najvišja raven, kar pomeni, da bodo transakcije končane, preden lahko začne nova transakcija.
  2. Ponovljivi branji omogočajo dostop do transakcij, ko se transakcija začne, čeprav ni končana.
  3. Obvezno branje omogoča dostop do podatkov po tem, ko so bili podatki namenjeni v bazo podatkov, vendar ne pred tem.
  4. Branje neobvezno je najnižja raven izolacije in omogoča dostop do podatkov, preden so bile spremembe izvedene.