АГЕНСТВО ПО ОБРАЗОВАНИЮ
Федеральное государственное образовательное учреждение высшего профессионального образования «Чувашский государственный университет имени И.Н.Ульянова»
Алатырский филиал
Кафедра Высшей математики и информационных технологий
КУРСОВАЯ РАБОТА
по дисциплине «Базы данных и СУБД»
на тему: «Модели транзакций»
Выполнил: студент
группы АФТ 61-05
Краснов Д.П.
Руководитель:
ст. преп. Алякина Л.А.
2010
ОГЛАВЛЕНИЕ
Введение
ГЛАВА 1. Общие сведения о транзакциях
1.1 Поддержка транзакций
1.2 Свойства транзакций
ГЛАВА 2.Модели транзакций
2.1 Плоские транзакции
2.2 Модель вложенных транзакций
2.3 Хроники
2.4 Модель многоуровневых транзакций
2.5 Модель рабочих потоков
2.6 Классификация систем обработки транзакций
Заключение
Литература
ВВЕДЕНИЕ
В этой курсовой работе обсуждаются тенденции и перспективы обработки транзакций в применении к системам информационного управления в целом. Рассматриваются, в частности, следующие вопросы:
. поддержка транзакций;
. свойства транзакций;
. модели транзакций;
. черты систем обработки транзакций следующего поколения.
ГЛАВА 1 Общие сведения о транзакциях
1.1 Поддержка транзакций
Транзакция - действие или ряд действий, выполняемых одним пользователем или прикладной программой, которые осуществляют чтение или изменение содержимого базы данных.
Транзакция является логической единицей работы, выполняемой в базе данных. Она может быть представлена отдельной программой, частью программы или даже отдельной командой (например, командой INSERT или UPDATE языка SQL) и включать произвольное количество операций, выполняемых в базе данных. С точки зрения администратора базы данных эксплуатация любого приложения может расцениваться как ряд транзакций, в промежутках между которыми выполняется обработка данных, осуществляемая вне среды базы данных.
Простейшей транзакцией, выполняемой в подобной базе данных, может быть корректировка зарплаты определенного работника, указанного его табельным номером х. Обобщенно подобная транзакция может быть записана, как показано на (рис. 1).
(рис. 1)
модель транзакция хроника
На (рис. 1) используется обозначение read (staffNo = x, salary), указывающее, что требуется считать элемент данных salary для записи, в которой ключевое значение равно х. В данном примере транзакция состоит из двух операций, выполняемых в базе данных (read и write), и одной операции, выполняемой вне базы данных (salary = salary * 1.1).
Любая транзакция завершается одним из двух возможных способов. В случае успешного завершения результаты транзакции фиксируются (commit) в базе данных, и последняя переходит в новое согласованное состояние. Если выполнение транзакции не увенчалось успехом, она отменяется. В этом случае в базе данных должно быть восстановлено то согласованное состояние, в котором она находилась до начала данной транзакции. Этот процесс называется откатом (roll back), или отменой транзакции. Зафиксированная транзакция не может быть отменена. Если окажется, что зафиксированная транзакция была ошибочной, потребуется выполнить другую транзакцию, отменяющую действия, выполненные первой транзакцией
Такая транзакция называется компенсирующей. ............