Содержание
- 2. Существуют два подхода решения проблем совместного доступа к общим данным: установка блокировок и управление параллельностью выполнения
- 3. Различают оптимистический и пессимистический подходы в управлении параллельностью выполнения транзакций. Пессимистический подход обеспечивает более высокий уровень
- 4. Блокировки Для организации многопользовательского доступа в СУБД применяется механизм блокировок. Суть блокировки состоит в том, что
- 5. Рассмотрим четыре вида блокировок, перечисленные в порядке убывания строгости ограничений на возможные действия. 1. Полная блокировка.
- 6. При одновременном выполнении различных операций над одним и тем же объектом производится попытка их совмещения. Совмещение
- 7. Транзакции Понятие транзакции имеет непосредственную связь с понятием целостности БД. В системах с развитыми средствами контроля
- 8. Различаются два вида ограничений целостности: немедленно проверяемые и откладываемые. К немедленно проверяемым ограничениям целостности относятся такие
- 9. Уровни изолированности транзакций В связи со свойством сохранения целостности БД транзакции являются подходящими единицами изолированности пользователей.
- 10. Существует несколько уровней изолированности транзакций. По приоритету их можно расположить в следующем порядке: READ UNCOMMITED (чтение
- 11. Существуют четыре особых случая нарушения способности к упорядочению. 1. Потерянные изменения. Результаты успешно завершенной операции обновления
- 12. 2. Неаккуратное считывание или чтение «грязных данных». Допустим, что транзакция T1 выполняет вставку новой строки, затем
- 13. 3. Неповторяемое считывание. Допустим, транзакция T1 читает объем А. До завершения транзакции T1 транзакция Т2 изменяет
- 14. 4. Наличие фиктивных элементов (фантомов). Допустим, что транзакция Т1 извлекает множество всех записей, которые удовлетворяют некоторому
- 15. Возможности возникновения этих нарушений при различных уровнях изоляции транзакций приведены в табл.
- 16. Для обеспечения реальной изолированности транзакций в СУБД применяется метод сериализации транзакций. Сериализиция транзакций – это определение
- 17. Методы сериализации транзакций Существуют два базовых подхода к сериализации транзакций: подход, основанный на синхронизационных захватах (блокировках)
- 18. Наиболее распространенным в централизованных СУБД (включающих системы, основанные на архитектуре "клиент-сервер") является подход, основанный на соблюдении
- 19. Захваты объектов несколькими транзакциями по чтению совместимы, т.е. нескольким транзакциям допускается читать один и тот же
- 20. Достаточно легко убедиться, что при соблюдении двухфазного протокола синхронизационных захватов действительно обеспечивается сериализация транзакций на третьем
- 21. На самом деле, когда мы говорим про операции над объектами базы данных, то любая операция над
- 22. Разработчики многих систем начинали с использования страничных захватов, полагая это некоторым компромиссом между стремлениями сократить накладные
- 23. Гранулированные синхронизационные захваты Подобные рассуждения привели к разработки аппарата гранулированных синхронизационных захватов. При применении этого подхода
- 24. IS (Intented for Shared lock) по отношению к некоторому составному объекту O означает намерение захватить некоторый
- 25. Довольно трудно описать словами все возможные ситуации. Мы ограничимся приведением полной таблицы совместимости захватов, анализируя которую
- 26. Предикатные синхронизационные захваты Несмотря на привлекательность метода гранулированных синхронизационных захватов, следует отметить что он не решает
- 27. Поскольку любая операция над реляционной базой данных задается некоторым условием (т.е. в ней указывается не конкретный
- 28. В типичных СУБД, поддерживающих двухуровневую организацию (языковой уровень и уровень управления внешней памяти), в интерфейсе подсистем
- 29. Тупики, распознавание и разрушение Одним из наиболее чувствительных недостатков метода сериализации транзакций на основе синхронизационных захватов
- 30. Основой обнаружения тупиковых ситуаций является построение (или постоянное поддержание) графа ожидания транзакций. Граф ожидания транзакций -
- 31. Не вдаваясь в детали, редукция состоит в том, что прежде всего из графа ожидания удаляются все
- 32. Грубо говоря, критерием выбора является стоимость транзакции; жертвой выбирается самая дешевая транзакция. Стоимость транзакции определяется на
- 33. Чтобы минимизировать число конфликтов между транзакциями, в некоторых СУБД (например, в Oracle) используется следующее развитие подхода.
- 35. Скачать презентацию