You are on page 1of 22

1

Qun l giao tc
Chng 2
Qun l giao tc 2
Gii thiu
Khi nim giao tc (transaction)
nh ngha
Tnh cht ACID ca giao tc
Cc thao tc ca giao tc
Trng thi ca giao tc
Lch thao tc (schedule)
Gii thiu
nh ngha
Lch tun t (Serial schedule)
Lch kh tun t (Serilizable schedule)
Conflict-Serializable
View-Serializable
Ni dung chi tit
Qun l giao tc 3
V d
H thng giao dch ngn hng
H thng t v bay
DBMS l mi trng a ngi dng
Nhiu thao tc truy xut ln cng mt n v d liu
Nhiu thao tc thi hnh ng thi
Gii thiu
Thi gian
Khch hng 1 Khch hng 2
Tm thy 1 ch trng
Tm thy 1 ch trng
t v bay
t v bay
2 khch hng t
cng 1 ch trng
???
C ch tun t
2
Qun l giao tc 4
Khi DBMS gp s c
Cc thao tc c th lm cho trng thi CSDL khng chnh
xc
Gii thiu (tt)
c s d ca ti khon A
Kim tra (s d > s tin cn rt)
Tng s d ca ti khon B
Gim s d ca ti khon A
Ti khon A Ti khon B
S c Ngn hng chu l
1 khong tin ???
Nguyn t
Qun l giao tc 5
Gii thiu
Khi nim giao tc (transaction)
nh ngha
Tnh cht ACID ca giao tc
Cc thao tc ca giao tc
Trng thi ca giao tc
Lch thao tc (schedule)
Ni dung chi tit
Qun l giao tc 6
Giao tc l 1 n v x l nguyn t gm 1 chui cc
hnh ng tng tc ln CSDL
Nguyn t: khng th phn chia c na
Giao tc (Transaction)
CSDL nht qun
1
CSDL nht qun
2
Giao tc
3
Qun l giao tc 7
Giao tc (tt)
Transaction
manager
Log
manager
Query
processor
Buffer
manager
Recovery
manager
Log
Data
Qun l giao tc 8
Nguyn t (Atomicity)
Hoc l ton b hot ng ca giao dch c phn nh ng
n trong CSDL hoc khng c hot ng no c
Nht qun (Consistency)
Mt giao tc c thc hin c lp vi cc giao tc khc x l
ng thi vi n bo m tnh nht qun cho CSDL
C lp (Isolation)
Mt giao tc khng quan tm n cc giao tc khc x l ng
thi vi n
Bn vng (Durability)
Mi thay i m giao tc thc hin trn CSDL phi c ghi
nhn bn vng
Tnh cht ACID ca giao tc
Qun l giao tc 9
Consistency
Tng A+B l khng i
Nu CSDL nht qun trc khi T c thc hin th sau
khi T hon tt CSDL vn cn nht qun
V d
T: Read(A,t);
t:=t-50;
Write(A,t);
Read(B,t);
t:=t+50;
Write(B,t);
4
Qun l giao tc 10
Atomicity
A=100, B=200 (A+B=300)
Ti thi im sau khi write(A,t)
A=50, B=200 (A+B=250) - CSDL khng nht qun
Ti thi im sau khi write(B,t)
A=50, B=250 (A+B=300) - CSDL nht qun
Nu T khng bao gi bt u thc hin hoc T c m bo
phi hon tt th trng thi khng nht qun s khng xut hin
V d (tt)
T: Read(A,t);
t:=t-50;
Write(A,t);
Read(B,t);
t:=t+50;
Write(B,t);
Qun l giao tc 11
Durability
Khi T kt thc thnh cng
D liu s khng th no b mt bt chp c s c h
thng xy ra
V d (tt)
T: Read(A,t);
t:=t-50;
Write(A,t);
Read(B,t);
t:=t+50;
Write(B,t);
Qun l giao tc 12
Isolation
Gi s c 1 giao tc T thc hin php ton A+B v chen
vo gia thi gian thc hin ca T
T kt thc: A+B=50+200=250
T kt thc: A+B=50+250=300
H thng ca cc giao tc thc hin ng thi c trng thi
tng ng vi trng thi h thng ca cc giao tc thc
hin tun t theo 1 th t no
V d (tt)
T: Read(A,t);
t:=t-50;
Write(A,t);
Read(B,t);
t:=t+50;
Write(B,t);
T
5
Qun l giao tc 13
Gi s CSDL gm nhiu n v d liu
Mt n v d liu (element)
C mt gi tr
c truy xut v sa i bi cc giao tc
Quan h (relation) - Lp (class)
Khi d liu trn a (block) / trang (page)
B (tuple) - i tng (object)
Cc thao tc ca giao tc
Qun l giao tc 14
Input(X)
Read(X, t)
Cc thao tc ca giao tc (tt)
Buffer Disk
XX t
Write(X, t)
Output(X)
Buffer Disk
X t X
X
X
Bufffer manager
Input
Output
Transaction
Read
Write
Qun l giao tc 15
Gi s CSDL c 2 n v d liu A v B vi rng buc
A=B trong mi trng thi nht qun
Giao tc T thc hin 2 bc
A:=A*2
B:=B*2
Biu din T
Read(A,t) ; t=t*2; Write(A,t);
Read(B,t) ; t=t*2; Write(B,t);
V d
6
Qun l giao tc 16
V d (tt)
Hnh ng
Read(A,t)
t:=t*2
Write(A,t)
Read(B,t)
t:=t*2
Write(B,t)
Output(A)
Output(B)
t
8
16
16
8
16
16
16
16
Mem A Mem B Disk B Disk A
8
8
16
16
16
16
16
16
8
8
16
16
16
8
8
8
8
8
8
16
16
8
8
8
8
8
8
8
16
Qun l giao tc 17
Active
Ngay khi bt u thc hin thao tc c/ghi
Partially committed
Sau khi lnh thi hnh cui cng thc hin
Failed
Sau khi nhn ra khng th thc hin cc hnh ng c na
Aborted
Sau khi giao tc c quay lui v CSDL c phc hi v trng
thi trc trng thi bt u giao dch
Bt u li giao tc (nu c th)
Hy giao tc
Committed
Sau khi mi hnh ng hon tt thnh cng
Trng thi ca giao tc
Qun l giao tc 18
S trng thi ca giao tc
7
Qun l giao tc 19
Gii thiu
Khi nim giao tc (transaction)
Lch thao tc (schedule)
Gii thiu
nh ngha
Lch tun t (Serial schedule)
Lch kh tun t (Serializable schedule)
Conflict-Serializable
View-Serializable
Ni dung chi tit
Qun l giao tc 20
Thc hin tun t
Ti mt thi im, mt giao tc ch c th bt u khi giao
tc trc n hon tt
Thc hin ng thi
Cho php nhiu giao tc cng truy xut d liu
Gy ra nhiu phc tp v nht qun d liu
Tuy nhin
Tn dng ti nguyn v thng lng (throughput)
Trong khi 1 giao tc ang thc hin c/ghi trn a, 1 giao tc khc ang x
l tnh ton trn CPU
Gim thi gian ch
Cc giao tc ngn phi ch i cc giao tc di
Chia s chu k CPU v truy cp a lm gim s tr hon trong khi cc
giao tc thc thi
Gii thiu
Qun l giao tc 21
L mt thnh phn ca DBMS c nhim v lp 1 lch
thc hin n giao tc x l ng thi
B lp lch (Scheduler)
Transaction
manager
Scheduler
Read/Write
request
Read & Write
Buffers
8
Qun l giao tc 22
Mt lch thao tc S c lp t n giao tc T
1
, T
2
, , T
n
c x l ng thi l 1 th t thc hin cc hnh
ng ca n giao tc ny
Th t xut hin ca cc thao tc trong lch phi ging
vi th t xut hin trong giao tc
Gm c
Lch tun t (Serial)
Lch kh tun t (Serializable)
Confict-Serializability
View-Serializability
Lch thao tc (Schedule)
Qun l giao tc 23
V d
T
2
T
1
Read(A,s)
s:=s*2
t:=t+100
Read(A,t)
t:=t+100
Write(A,t)
Read(B,t)
Write(B,t)
s:=s*2
Write(A,s)
Read(B,s)
Write(B,s)
Gi s rng buc nht qun trn CSDL l A=B
Tng giao tc thc hin ring l th tnh nht qun s
c bo ton
Qun l giao tc 24
Lch tun t (Serial schedule)
Mt lch S c gi l tun t nu cc hnh ng ca
cc giao tc T
i
(i=1..n) c thc hin lin tip nhau
T
1
T
2
T
n

Thi gian
S
T
3
9
Qun l giao tc 25
Lch tun t (tt)
T
2
T
1
Read(A,s)
s:=s*2
t:=t+100
Read(A,t)
t:=t+100
Write(A,t)
Read(B,t)
Write(B,t)
s:=s*2
Write(A,s)
Read(B,s)
Write(B,s)
A B
25 25
125
125
250
250
S
1
T
2
T
1
Read(A,s)
s:=s*2
t:=t+100
Read(A,t)
t:=t+100
Write(A,t)
Read(B,t)
Write(B,t)
s:=s*2
Write(A,s)
Read(B,s)
Write(B,s)
A B
25 25
50
50
150
150
S
2
Qun l giao tc 26
Lch kh tun t
(Serializable schedule)
Mt lch S c lp t n giao tc T
1
, T
2
, , T
n
x l
ng thi c gi l kh tun t nu n cho cng
kt qu vi 1 lch tun t no c lp t n giao
tc ny
T
n
T
1
T
2
T
3
Thi gian
S
Qun l giao tc 27
Lch kh tun t (tt)
T
2
T
1
Read(A,s)
s:=s*2
t:=t+100
Read(A,t)
t:=t+100
Write(A,t)
Read(B,t)
Write(B,t)
s:=s*2
Write(A,s)
Read(B,s)
Write(B,s)
A B
25 25
125
125
250
250
S
3
Trc S
3
khi thc hin
A=B=c
vi c l hng s
Sau khi S
3
kt thc
A=2*(c+100)
B=2*(c+100)
Trng thi CSDL nht
qun
S
3
l kh tun t
10
Qun l giao tc 28
Lch kh tun t (tt)
T
2
T
1
Read(A,s)
s:=s*2
t:=t+100
Read(A,t)
t:=t+100
Write(A,t)
Read(B,t)
Write(B,t)
s:=s*2
Write(A,s)
Read(B,s)
Write(B,s)
A B
25 25
125
50
250
150
S
4
Trc S
4
khi thc hin
A=B=c
vi c l hng s
Sau khi S
4
kt thc
A = 2*(c+100)
B = 2*c + 100
Trng thi CSDL khng
nht qun
S
4
khng kh tun t
Qun l giao tc 29
Lch kh tun t (tt)
T
2
T
1
Read(A,s)
s:=s*1
t:=t+100
Read(A,t)
t:=t+100
Write(A,t)
Read(B,t)
Write(B,t)
s:=s*1
Write(A,s)
Read(B,s)
Write(B,s)
A B
25 25
125
25
125
125
S
5
Khi S
5
kt thc
A v B bng nhau
Trng thi cui cng
nht qun
S
5
kh tun t, c kt
qu ging vi lch tun
t
T
1
, T
2
T
2
, T
1
Qun l giao tc 30
Lch kh tun t (tt)
xc nh 1 lch thao tc c kh tun t hay khng
Xem xt chi tit cc hnh ng ca cc giao tc???
Tuy nhin
B lp lch kh bit c Giao tc ny c nhn A vi hng s
khc 1 hay khng?
Nhng
B lp lch phi bit cc thao tc c/ghi ca giao tc
Nhng n v d liu no c giao tc c
Nhng n v d liu no c th b thay i
n gin cng vic cho b lp lch
Nu c hnh ng no tc ng ln n v d liu A lm cho
trng thi CSDL khng nht qun th giao tc vn thc hin
hnh ng
Thao tc c v ghi Read(X) / Write(X)
Qui c: r
i
(X) v w
i
(X)
11
Qun l giao tc 31
Conflict-Serializability
tng
Xt 2 hnh ng lin tip nhau trong 1 lch thao tc
Nu th t ca chng c i cho nhau
Th hot ng ca t nht 1 giao tc c th thay i
T T
Hnh ng 1
Hnh ng 2
Hnh ng 4
Hnh ng 1
Hnh ng 3
Hnh ng 4
Hnh ng 3
Hnh ng 2
Qun l giao tc 32
Conflict-Serializability (tt)
Cho lch S c 2 giao tc T
i
v T
j
, xt cc trng hp
r
i
(X) ; r
j
(Y)
Khng bao gi c xung t, ngay c khi X=Y
C 2 thao tc khng lm thay i gi tr ca n v d liu X, Y
r
i
(X) ; w
j
(Y)
Khng xung t khi X=Y
T
j
ghi Y sau khi T
i
c X, gi tr ca X khng b thay i
T
i
c X khng nh hng g n T
j
ghi gi tr ca Y
w
i
(X) ; r
j
(Y)
Khng xung t khi X=Y
w
i
(X) ; w
j
(Y)
Khng xung t khi X=Y
Qun l giao tc 33
Conflict-Serializability (tt)
Hai hnh ng xung t nu
Thuc 2 giao tc khc nhau
Truy xut n cng 1 n v d liu
C t nht mt hnh ng ghi (write)
khng th hon v th t
Read(A)
Write(A)
T
i
T
j
Write(A)
Write(A)
T
i
T
j
Write(A)
Read(A)
T
i
T
j
Loi b s trng hp
ngu nhin
12
Qun l giao tc 34
Conflict-Serializability (tt)
V d
T
2
T
1
Read(A)
Read(A)
Write(A)
Read(B)
Write(B)
Write(A)
Read(B)
Write(B)
S
T
2
T
1
Read(A)
Read(A)
Write(A)
Read(B)
Write(B)
Write(A)
Read(B)
Write(B)
S
T
2
T
1
Read(A)
Read(A)
Write(A)
Read(B)
Write(B)
Write(A)
Read(B)
Write(B)
Qun l giao tc 35
Conflict-Serializability (tt)
nh ngha
S, S l nhng lch thao tc conflict-equivalent
Nu S c th c chuyn thnh S bng mt chui nhng hon
v cc thao tc khng xung t
Mt lch thao tc S l conflict-serializable
Nu S l conflict-equivalent vi mt lch thao tc tun t no
S conflict-serializable S kh tun t
S conflict-serializable S kh tun t ???
Qun l giao tc 36
Conflict-Serializability (tt)
Xt li lch S
5
T
2
T
1
Read(A,s)
s:=s*1
t:=t+100
Read(A,t)
t:=t+100
Write(A,t)
Read(B,t)
Write(B,t)
s:=s*1
Write(A,s)
Read(B,s)
Write(B,s)
A B
25 25
125
25
125
125
S
5
Serializable
nhng khng
conflict-serializable
13
Qun l giao tc 37
Conflict-Serializability (tt)
Xt trng hp
nhng khng
conflict-serializable
S
T
2
T
1
Write(Y)
Write(X)
Write(X)
T
3
Write(Y)
Write(X)
Serial Serializable
Write(Y)
Write(X)
S
T
2
T
1
Write(Y)
Write(X)
Write(X)
T
3 S
Qun l giao tc 38
Kim tra Conflict-Serializability
Cho lch S
S c conflict-serializable khng?
tng
Cc hnh ng xung t trong lch S c thc hin theo
th t no th cc giao tc thc hin chng trong S s
cng th t
T
2
T
1
Read(A)
Read(A)
Write(A)
Read(B)
Write(B)
Write(A)
Read(B)
Write(B)
S
T
2
T
1
Read(A)
Read(A)
Write(A)
Read(B)
Write(B)
Write(A)
Read(B)
Write(B)
S
Qun l giao tc 39
Kim tra Conflict-Serializability (tt)
Cho lch S c 2 giao tc T
1
, T
2
T
1
thc hin hnh ng A
1
T
2
thc hin hnh ng A
2
Ta ni T
1
thc hin trc T
2
, k kiu T
1
<
S
T
2
, khi
A
1
c thc hin trc A
2
trong S
A
1
khng nht thit phi lin tip A
2
A
1
v A
2
cng thao tc ln 1 n v d liu
C t nht 1 hnh ng ghi trong A
1
v A
2
14
Qun l giao tc 40
Precedence graph
Cho lch S gm cc giao tc T
1
, T
2
, , T
n
th trnh t ca S, k hiu P(S), c
nh l cc giao tc T
i
Ta c th t nhn cho nh l i
Cung i t T
i
n T
j
nu T
i
<
S
T
j
Nu P(S) khng c chu trnh th S conflict-serializable
Th t hnh hc (topological order) ca cc nh l
th t ca cc giao tc trong lch tun t
Qun l giao tc 41
Precedence graph (tt)
B
S
1
, S
2
conflict-equivalent P(S
1
) = P(S
2
)
Chng minh
Gi s P(S
1
) = P(S
2
)
-T
i
sao cho T
i
T
j
c trong S
1
v khng c trong S
2
S
1
= p
i
(A) q
j
(A)
S
2
= q
j
(A) p
i
(A)
V p
i
(A) v q
j
(A) l xung t
S
1
, S
2
khng conflict-equivalent
Qun l giao tc 42
Precedence graph (tt)
Ch
P(S
1
) = P(S
2
) S
1
, S
2
conflict-equivalent
Xt 2 trng hp
T
2
T
1
Read(A)
Read(B)
Write(A)
Write(B)
S
T
2
T
1
Read(A)
Read(B)
Write(A)
Write(B)
S
1 2
15
Qun l giao tc 43
Precedence graph (tt)
nh l
P(S
1
) khng c chu trnh S
1
conflict-serializable
Chng minh (:)
Gi s S
1
conflict-serializable
-S
2
sao cho: S
1
v S
2
conflict-equivalent
P(S
2
) = P(S
1
)
S
2
l lch tun t
P(S
1
) khng c chu trnh v P(S
2
) khng c chu trnh
Qun l giao tc 44
Precedence graph (tt)
nh l
P(S
1
) khng c chu trnh S
1
conflict-serializable
Chng minh ()
Gi s P(S
1
) khng c chu trnh
Ta bin i S
1
nh sau
Chn ra 1 giao tc T
1
khng c cung no i n n
S
1
= q
j
(A) p
1
(A)
em T
1
ln v tr u
S
1
= < hnh ng ca T
1
>< phn cn li ...>
Lp li qu trnh ny tun t ho cho phn cn li
S
1
tun t
Qun l giao tc 45
V d
T
2
T
1
Read(A)
Read(B)
Write(A)
Write(B)
S
T
3
Read(A)
Write(A)
Read(B)
Write(B)
T
2
<
S
T
3
2 3
T
1
<
S
T
2
1 2
1 2 3
P(S) khng c chu trnh
S conflict-serializable theo
th t T
1
, T
2
, T
3
16
Qun l giao tc 46
V d (tt)
T
2
T
1
Read(A)
Read(B)
Write(A)
Write(B)
S
T
3
Read(A)
Write(A)
Read(B)
Write(B)
S conflict-serializable theo th t T
1
, T
2
, T
3
Qun l giao tc 47
V d (tt)
T
2
T
1
Read(A)
Read(B)
Write(A)
Write(B)
S
T
3
Read(A)
Write(A)
Read(B)
Write(B)
P(S) c chu trnh
S khng conflict-serializable
T
2
<
S
T
3
2 3
T
2
<
S
T
1
2 1
T
1
<
S
T
2
1 2
1 2 3
Qun l giao tc 48
Bi tp
T
2
T
1
Read(A)
Write(A)
S
T
4
Read(A)
Write(A)
T
3
V P(S)
S c conflict-serializable khng?
17
Qun l giao tc 49
Bi tp (tt)
T
2
T
1
Read(A)
Read(C)
Write(A)
Write(C)
S
T
4
Read(A)
Write(A)
Write(D)
Write(B)
T
3
V P(S)
S c conflict-serializable khng?
Qun l giao tc 50
View-Serializability
Xt lch S
T
2
T
1
Write(A)
S
Write(A)
T
3
Read(A)
Write(A)
1 2
3
P(S) c chu trnh
S khng conflict-serializable
Qun l giao tc 51
View-Serializability (tt)
So snh lch S v 1 lch tun t S
Trong S v S u c T
1
thc hin read(A)
T
2
v T
3
khng c A
Kt qu ca S v S ging nhau
T
2
T
1
Write(A)
S
Write(A)
T
3
Read(A)
Write(A)
Khng conflict-serializable
T
2
T
1
Write(A)
S
Write(A)
T
3
Read(A)
Write(A)
Serial
Gii thch nh th no y?
18
Qun l giao tc 52
View-Serializability (tt)
tng
Xt trng hp
Nhn xt
Sau khi T ghi A xong m khng c giao tc no c gi tr ca A
Khi , hnh ng w
T
(A) c th chuyn n 1 v tr khc trong
lch thao tc m cng khng c giao tc no c A
Ta ni
Hnh ng r
U
(A) c gc l giao tc T
T U
Write(A)
Read(A)
Qun l giao tc 53
View-Serializability (tt)
nh ngha
S, S l nhng lch thao tc view-equivalent
1- Nu trong S c w
j
(A) r
j
(A) th trong S cng c w
j
(A) r
j
(A)
2- Nu trong S c r
i
(A) l thao tc c gi tr ban u ca A
th trong S cng r
i
(A) c gi tr ban u ca A
3- Nu trong S c w
i
(A) l thao tc ghi gi tr sau cng ln A
th trong S cng c w
i
(A) ghi gi tr sau cng ln A
Mt lch thao tc S l view-serializable
Nu S l view-equivalent vi mt lch thao tc tun t no
S view-serializable S conflict-serializable
S view-serializable S conflict-serializable???
Qun l giao tc 54
View-Serializability (tt)
S conflict-serializable S view-serializable
Chng minh
Hon v cc hnh ng khng xung t
Khng lm nh hng n nhng thao tc c
Cng khng lm nh hng n trng thi CSDL
19
Qun l giao tc 55
View-Serializability (tt)
S view-serializable S conflict-serializable
Trong S c nhng hnh ng ghi khng c tc dng
(useless)
S = w
2
(A) w
3
(A)
Khng c hnh ng c A
T
2
T
1
Write(A)
S
Write(A)
T
3
Read(A)
Write(A)
Qun l giao tc 56
View-Serializability (tt)
Lch thao tc
View-Serializable
Conflict-
Serializable
Qun l giao tc 57
Kim tra View-Serializability (tt)
Cho 1 lch thao tc S
Thm 1 giao tc cui T
f
vo trong S sao cho T
f
thc
hin vic c ht tt c n v d liu trong S
(b qua iu kin th 3 ca nh ngha view-equivalent)
S = w
1
(A)w
2
(A) r
f
(A)
Thm 1 giao tc u tin T
b
vo trong S sao cho Tb
thc hin vic ghi cc gi tr ban u cho cc n v
d liu
(b qua iu kin th 2 ca nh ngha view-equivalent)
S = w
b
(A) w
1
(A)w
2
(A)
Ghi A cui cng
20
Qun l giao tc 58
Kim tra View-Serializability (tt)
V th trnh t gn nhn cho S, k hiu G(S),
(PolyGraph)
nh l cc giao tc T
i
(bao gm T
b
v T
f
)
Cung
(1) Nu c r
i
(X) vi gc l T
j
th v cung i t T
j
n T
i
w
j
(X) r
i
(X)
(2) Vi mi w
j
(X) r
i
(X), xt w
k
(X) sao cho T
k
khng chn vo
gia T
j
v T
i
i j
X
Qun l giao tc 59
Kim tra View-Serializability (tt)
(2a) Nu T
j
= T
b
v T
i
= T
f
th v cung T
k
T
j
v T
i
T
k
T
j
T
i
Write(X)
Read(X)
T
k
Write(X)
T
j
T
i
Write(X)
Read(X)
T
k
Write(X)
i j k
X
X
i j k
X
X
X X
Chn 1 cung va to sao cho
th khng c chu trnh
Qun l giao tc 60
Kim tra View-Serializability (tt)
(2b) Nu T
j
= T
b
th v cung T
i
T
k
(2c) Nu T
i
= T
f
th v cung T
k
T
j
T
j
= T
b
T
i
Write(X)
Read(X)
T
k
Write(X)
T
k
Write(X)
T
j
T
i
= T
f
Write(X)
Read(X)
T
k
Write(X)
T
k
Write(X)
i j k
X
X
X
i j k
X
X
X
21
Qun l giao tc 61
V d
T2 T1
Write(A)
S
Write(A)
T3
Read(A)
Write(A)
T
2
T
1
Write(A)
S
Write(A)
T
3
Read(A)
Write(A)
Write(A)
T
b
T
f
Read(A)
1 2 3 b f
G(S) khng c chu trnh
S view-serializable theo
th t T
b
, T
1
, T
2
, T
3
, T
f
A A
Write(A)
A
A
Read(A)
Write(A)
Write(A)
Read(A)
A
Write(A)
A
Khng chn v
khng th di T
b
vo gia T
3
v T
f
Qun l giao tc 62
V d (tt)
T
2
T
1
Write(A)
S
Write(A)
T
3
Read(A)
Write(A)
Write(A)
T
b
T
f
Read(A)
1 2 3 b f G(S) c chu trnh
S khng view-serializable
T2 T1
Write(A)
S
Read(A)
T3
Read(A)
Write(A)
Write(A)
Read(A)
Read(A)
Write(A)
Read(A)
Write(A)
A A A
Write(A)
Read(A)
A
A
Write(A)
A
A
Khng chn v
khng th di T
b
vo gia T
2
v T
3
Write(A)
Write(A)
Khng chn v
khng th di T
b
vo gia T
2
v T
3
A
A
Qun l giao tc 63
V d (tt)
B cung t T
3
sang T
1
G(S) khng chu trnh
S view-serializable theo th t T
b
, T
1
, T
2
, T
3
, T
f
1 2 3 b f
A A A A
A
A
22
Qun l giao tc 64
Bi tp
T
2
T
1
Write(A)
S
Read(A)
T
3
Read(B)
Write(B)
Read(A)
Write(B)
Write(B)
V G(S)
S c view-serializable?
Qun l giao tc 65
Bi tp (tt)
V G(S)
S c view-serializable?
T
2
T
1
Read(A)
S
Write(C)
T
3
Read(A)
Write(B)
Read(C)
Write(D)
Write(A)
T
4
Read(B)
Read(C)
Read(B)
Write(A)
Write(B)
Qun l giao tc 66

You might also like