Sočasni dostop do podatkovne baze

Iz E-študij, proste zakladnice študentskega znanja

Skoči na: navigacija, iskanje

Sočasni dostop do podatkovne baze je mogoč zato, ker sodobni operacijski sistemi omogočajo izvajanje več programov hkrati. Poleg SUPB se tako lahko izvaja več uporabniških programov, ki dostopajo do PB hkrati.

Vsebina

Prepletanje

Transakcije, ki jih izvajajo uporabniški programi se izvajajo prepletajoče, zato tudi SUPB izvaja ukaze prepletajoče.

Pasti prepletanja

Prepletajoče izvajanje transakcij skriva dve pasti:

  • podatkovna baza lahko zaide v nekonsistentno stanje
  • rezultati povpraševanj v podatkovni bazi so lahko napačni

Nekonsistentno stanje

Prepletajoča izvedba transakcij lahko bazo pusti v nekonsistentnem stanju, čeprav sta obe transakciji pravilno izvedli svoja ažuriranja.

izgubljeno ažuriranje
na osnovi istega prebranega zapisa se izvede ažuriranje istega zapisa s strani dveh transakcij, kar pomeni, da obvelja samo zadnje ažuriranje,
branje neobstoječega zapisa
predpostavimo, da neka transakcija prebere zapis, ki ga je ravnokar ažurirala druga transakcija, ki se je takoj zatem ponesrečila in zato razveljavila. Prva transakcija je torej prebrala zapis (oz. njegovo stanje), ki ni nikoli veljavno obstajal v PB.

Nadzor

Naloga nadzora nad sočasno uporabo PB (concurrency control) je:

  • ohraniti podatkovno bazo v konsistentnem stanju,
  • dopustiti čimvečjo sočasnost izvajanja transakcij

Tehnike

V ta namen se uporabljata dve tehniki:

Sočasno izvajanje transakcij bomo obravnavali na primeru centralizirane PB, ki jo upravlja en sam SUPB Do problemov sočasnega izvajanja transakcij prihaja tudi pri porazdeljenih PB. Ker se tam transakcije zares izvajajo sočasno, so problemi sočasnosti izvajanja transakcij še težje rešljivi. Niso pa nerešljivi.

Osebna orodja
Imenski prostori
Različice
Dejanja
navigacija

Tiskanje/izvoz
orodja