Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
4Activity
0 of .
Results for:
No results containing your search query
P. 1
05 - SISQLHLP - Ispitni Zadaci Transakcije

05 - SISQLHLP - Ispitni Zadaci Transakcije

Ratings: (0)|Views: 201|Likes:
Published by flashboy_didi

More info:

Published by: flashboy_didi on Sep 18, 2009
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

01/08/2013

pdf

text

original

 
BAZE PODATAKA 1 – TRANSAKCIJE
Zadatak:Dat je redosled izvršavanja transakcija T1, T2, T3, i T4, kao na
Slici 
.
Vreme T1 T2 T3 T4t01
Read(F)
t02
F := F - 1
t03
Write(F)
t04
Read(B)
t05
B := B - 1
t06
Write(B)
t07
Read(B)
t08
B := B + 1
t09
Write (B)
t10
Read(D)
t11
D := D / 5
t12
Read(C)
t13
C := D * 2
t14
Write(C)
t15
Write(D)
t16
Read(F)
t17
F := F - 1
t18
Write(F)
t19
Commit
t20
Read(E)
t21
E := E - 1
t22
Write(E)
t23
Commit
t24
Read(A)
t25
A := A + B
t26
Write(A)
t27
Commit
t28
Read(D)
t29
D := D / 3
t30
Write(D)
t31
Commit
Za oporavak od kvara se koristi mehanizam
 Prateće stranice
. Podaci
 A
,
 B,
 
,
 D
,
 E 
, i
 F 
nalaze se na različitim stranicama na disku (podatak A u stranici 1,..., D u stranici 4,..., F u stranici6).a.) Prikazati izgled relevantnih delova sistema u trenutku neposredno posle
Commit 
operacijatransakcija
T2
i
T4 
, i u trenutku kvara, neposredno posle trenutka
t31
? Koje operacije mehanizam
 Prateće Stranice
vrši posle popravke sistema u cilju vraćanja baze u konzistentno stanje?
 
 Rešenje a.)
Prvo određujemo sve moguće serijalizovane redoslede, imamo sledeća ograničenja:
 –
T1 prethodi T4 po podatku F.
 –
T4 prethodi T2 po podatku B.
 –
T3 prethodi T1 po podatku D.Kada nacrtamo graf serijalizovanosti koji je u ovom slučaju veoma jednostavan vidimo da nemaciklusa, pa postoji bar jedan serijalizovani redosled. U ovom slučaju postoji samo jedan i to:T3 -> T1 -> T4 -> T2.
T1
6 7
T4
2 87 12
T2
8 9
T1
4 113 10Tabela Tekućih Stranica01A02B03C04D05E06F07F108B109B210C111D112F2131415Operativna Memorija6
T1
27
T4
8
T2
43
T3
Tabela Pratećih Stranica
 Izgled relevantnih delova sistema posle izvršavanja operacije T4 commits
T4 pokušava da izvrši commit operaciju, međutim, to nije moguće jer se pre nje u serijskomredosledu dolaze T1 i T3. Tako da ova transakcija čeka da transakcije T1 i T3 izvrše commit, pa tek onda izvršava svoju commit operaciju. Zbog ovoga se TTS transakcije T4 ne prepisuje uodgovarajuću TPS.Kada bi se kvar desio u ovom trenutku odgovarajući oporavak bi izgledao ovako:TTS(T1) = TPS(T1)TTS(T3) = TPS(T3)Restart {T1, T2, T3, T4}.Kod transakcija T2 i T4 se ne vrši prepisivanje iz TPS u TTS, jer njihove TTS pokazuju na bar jednu ne konzistentnu stranicu. Stranica je konzistentna, ako je početna, ili ako je nastala kaoposledica upisa commit-ovane transakcije.
 
T1
6 7
T4
2 87 12
T2
8 91 14
T3
4 113 105 13Tabela Tekućih Stranica01A02B03C04D05E06F07F108B109B210C111D112F213E114A115Operativna Memorija6
T1
27
T4
81
T2
11 410 313 5
T3
Tabela Pratećih Stranica
 Izgled relevantnih delova sistema posle izvršavanja operacije T2 commits
U trenutku t23 transakcija T3 izvršava commit operaciju, i ona se bez smetnji izvršava (jer T3 ne“čeka” ni jednu drugu transakciju). Posledica ovoga je prepisivanjaU trenutku t27 transakcija T2 pokušava da izvrši commit operaciju, međutim to joj ne uspeva, jercommit nisu još odradile transakcije T1 i T4. Iz sličnog razloga ni commit operacija transakcije T4koja je još pre inicirane ne može da se izvrši (jer T1 commits, još nije izvršeno).U slučaju da se kvar desio u trenutku t27 odgovarajući oporavak bi izgledao ovako:TTS(T1) = TPS(T1)Restart {T1, T2, T4}

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->