[r]
(1)Bài t p H qu n tr CSDL ậ ệ ả ị A L CH BI U KH TU N T Ị Ể Ả Ầ Ự
1 Ki m tra tính kh tu n t c a l ch bi u sau N u l ch bi u kh tu n t , cho bi t ể ả ầ ự ủ ị ể ế ị ể ả ầ ự ế l ch tu n t tị ầ ự ương đương:
Chú ý: oi(X) cho bi t thao tác o c a giao tác Ti đ n v d li u X o có th read (r),ế ủ ị ữ ệ ể write (w), read lock (rl), wl (write lock), un (unlock)
a S1: r2(Z); r2(Y); w2(Y); r3(Y); r3(Z); r1(X); w1(X);
w3(Y); w3(Z); r2(X); r1(Y); w1(Y); w2(X)
b S2: r3(Y); r3(Z); r1(X); w1(X); w3(Y); w3(Z); r2(Z);
r1(Y); w1(Y); r2(Y); w2(Y); r2(X); w2(X)
c S3: wl3(A); wl4(B); un3(A); rl1(A);
un4(B); wl3(B); rl2(A); un3(B); rl1(B); un2(A);
un1(A); wl4(A); un1(B); rl2(B); un4(A); un2(B)
d S4: rl1(A); un1(A); wl3(A); rl2(B); un3(A); rl4(A); un2(B); wl5(B); un4(A); wl2(A);
wl1(C); un1(C); rl2(C); rl3(C); un5(B); wl4(B); un2(C); un3(C); un2(A); un4(B); wl5(C); un5(C)
2 Cho l ch bi u sau: ị ể
S5: r1(X);r2(Z);r1(Z);r3(X);r3(Y);w1(X);c1;w3(Y);c3;r2(Y);w2(Z);w2(Y);c2; S6: r1(X);r2(Z);r1(Z);r3(X);r3(Y);w1(X);w3(Y);r2(Y);w2(Z);w2(Y);c1;c2;c3; S7:r1(X);r2(Z);r3(X);r1(Z);r2(Y);r3(Y);w1(X);c1;w2(Z);w3(Y);w2(Y);c3;c2;
Đ i v i t ng l ch bi u có khơng rollback dây chuy n khơng, có th ph c h i không? ố ị ể ề ể ụ B ĐI U KHI N Đ NG TH I DÙNG K THU T KHÓA Ề Ể Ồ Ờ Ỹ Ậ
1 Cho c u trúc phân c p h t d li u sau: ấ ấ ữ ệ
A B
D
C
E F G
Và cho giao tác:
(2)(3)T2: Đ c C, Ghi F ọ T3: Đ c B, Đ c E ọ ọ
a Đ t khóa phù h p v i k thu t l p l ch kh tu n t theo c ch khóa pha, n u HQT ặ ợ ỹ ậ ậ ị ả ầ ự ế ế CSDL h tr phỗ ợ ương th c khóa Slock Xlock ứ
b Đ t khóa phù h p v i nghi th c khóa phân c p, GT ch nh khóa khơng c n thi t ặ ợ ứ ấ ỉ ả ầ ế gi khóa n a HQT CSDL h tr phữ ữ ỗ ợ ương th c khóa đ n gi n Lock ứ ả
c L p l ch theo k thu t xác nh n h p l cho khơng có GT b rollback ậ ị ỹ ậ ậ ợ ệ ị Cho l ch bi u sau: ị ể
S1: r1(A), r2(B), r3(C), w1(B), w2(C), w3(D)
S2: r1(A), r2(B), r3(C), r1(B), r2(C), r3(D), w1(C), w2(D), w3(E) S3: r1(A), r2(B), r3(C), r1(B), r2(C), r3(D), w1(A), w2(B), w3(C) Đ i v i t ng l ch bi u ố ị ể
a Đ t khóa phù h p v i b l p l ch h tr shared lock exclusive lock: đ t shared ặ ợ ộ ậ ị ỗ ợ ặ lock trước thao tác đ c (nh ng sau khơng có thao tác ghi đvdl b i ọ giao tác), đ t exclusive lock trặ ước nh ng thao tác đ c khác thao tác ữ ọ ghi Đ t unlock vào cu i giao tác Cho bi t trình th c hi n c a l ch bi u ặ ố ế ự ệ ủ ị ể b Đ t shared lock exclusive lock cho phép khóa tăng c p (upgrading), unlock vào ặ ấ
cu i giao tác Cho bi t trình th c hi n l ch bi u n u b l p l ch h tr shared ố ế ự ệ ị ể ế ộ ậ ị ỗ ợ lock, exclusive lock upgrading
c Đ t shared lock, exclusive lock, update lock unlock: shared lock trặ ước m i thao ỗ tác đ c khơng có tăng c p, đ t update lock trọ ấ ặ ước m i thao tác đ c có tăng c p, đ t ỗ ọ ấ ặ exclusive lock trước m i thao tác ghi Đ t unlock cu i m i giao tác Cho bi t ỗ ặ ố ỗ ế trình th c hi n l ch bi u n u b l p l ch h tr shared lock, exclusive lock update ự ệ ị ể ế ộ ậ ị ỗ ợ lock
3 Đ i v i t ng l ch bi u sau, đ t khóa phù h p (read, write, increment) trố ị ể ặ ợ ướ ừc t ng thao tác unlock cu i giao tác Cho bi t trình th c hi n l ch bi u n u b l p l ch h tr ố ế ự ệ ị ể ế ộ ậ ị ỗ ợ lo i khóa
a r1(A); r2(B); inc1(B); inc2C; w1(C); w2(D)
b r1(A); r2(B); inc1(B); inc2(A); w1(C); w2(D) Cho giao tác sau:
T1: l1(A); r1(A); l1(B); w1(B); u1(A); u1(B)