Домашнее задание №6.

advertisement
Домашнее задание №6.
Рассмотрим действия четырех транзакций T1, T2, T3, T4. Первоначально
переменные имеют следующие значения: a=3; b=5; c=1; d=4.
T1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
T2
START
READ a
a=a*10
T3
T4
START
READ b
b=b-1
WRITE b
WRITE a
READ c
c=c+2
WRITE c
COMMIT
START
READ a
a=a-1
WRITE a
READ d
d=d-3
START
READ c
c=10
WRITE c
COMMIT
WRITE d
COMMIT
COMMIT
Задача 1 (30 баллов).
Пусть СУБД использует протокол возврата с контрольными точками. Постройте
протокол, соответствующий действиям данных транзакций, установив контрольную точку
так, чтобы несколько транзакций стартовали внутри контрольной точки.
Приведите пример последовательности всех действий по восстановлению
согласованного состояния базы данных в следующих случаях:
а) сбой произошел во время выполнения контрольной точки;
б) сбой произошел после выполнения контрольной точки.
Задача 2 (30 баллов).
Пусть СУБД использует протокол повтора с контрольными точками. Постройте
протокол, соответствующий действиям данных транзакций, установив контрольную точку
так, чтобы несколько транзакций стартовали внутри контрольной точки. При установке
конца контрольной точки укажите, какие действия с базой данных должны ему
предшествовать.
Приведите пример последовательности всех действий по восстановлению
согласованного состояния базы данных в следующих случаях:
а) сбой произошел во время выполнения контрольной точки;
б) сбой произошел после выполнения контрольной точки.
Задача 3 (30 баллов).
Пусть СУБД использует протокол возврата-повтора с контрольными точками.
Постройте протокол, соответствующий действиям данных транзакций, установив
контрольную точку так, чтобы несколько транзакций стартовали внутри контрольной
точки. При установке конца контрольной точки укажите, какие действия с базой данных
должны ему предшествовать.
Приведите пример последовательности всех действий по восстановлению
согласованного состояния базы данных в следующих случаях:
а) сбой произошел во время выполнения контрольной точки;
б) сбой произошел после выполнения контрольной точки.
Download