
- •Транзакция, это - ?
- •Какие действия совершает транзакция по отношению к бд?
- •Что происходит с системой в случае аварийного завершения транзакции?
- •Какие операторы сигнализируют об успешном и неудачном завершении транзакции?-
- •Назовите основные свойства транзакции.
- •Что означает термин параллелизм в среде субд?
- •Какие существуют проблемы параллельных процессов?
- •Причина потери результатов обновления элементов бд?
- •Какие конфликты возникают при параллельной работе транзакций?
- •Назовите графики запуска транзакций.
- •Какой график транзакций называется сериализуемым?
- •Назовите способы разрешения конкуренций между транзакциями.
- •Проблемы блокировок транзакций?
- •Назовите способы предотвращения «тупиков».
- •Какова формальная модель транзакций?
- •Как осуществляется проверка сериализуемости транзакций?
- •Протокол, гарантирующий сериализуемость?
- •Представьте матрицу совместимости транзакций при использовании блокировок для чтения и записи.
Представьте матрицу совместимости транзакций при использовании блокировок для чтения и записи.
В системе поддерживается два типа блокировок:
1. Х – блокировка (XLOCK – exclusive lock) – блокировка без взаимного доступа. WLOCK обозначает то же самое.
2. S – блокировка (SLOCK- shared lock) – блокировка с взаимным доступом. RLOCK обозначает то же самое.
X – блокировка записи S – блокировка чтения
1. Если транзакция Т блокирует кортеж А (Х-блокировка), то запрос любой другой транзакции к А будет отменён.
2. Если транзакция Т, блокирующая элемент А (S – блокировка), то · запрос со стороны транзакции Т2 на Х-блокировку будет отвергнут · запрос со строки Т2 на S-блокировку будет принят Эти правила можно представить в виде матрицы совместимости (рис.3.15). Запрос транзакций Т1 и Т2 к одному элементу А. N-означает конфликтную ситуацию. Т2 – находится в состоянии ожидания. Y – полная совместимость, «–» - отсутствие блокировок.
Рис.3.15. Матрица совместимости транзакций