Домашнее задание №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 баллов). Пусть СУБД использует протокол возврата-повтора с контрольными точками. Постройте протокол, соответствующий действиям данных транзакций, установив контрольную точку так, чтобы несколько транзакций стартовали внутри контрольной точки. При установке конца контрольной точки укажите, какие действия с базой данных должны ему предшествовать. Приведите пример последовательности всех действий по восстановлению согласованного состояния базы данных в следующих случаях: а) сбой произошел во время выполнения контрольной точки; б) сбой произошел после выполнения контрольной точки.