- •Содержание
- •Введение
- •1 Что такое транзакции
- •2 Параллелизм
- •3 Механизм транзакций
- •4 Свойства транзакций как механизма
- •5 Варианты завершения транзакций
- •6 Журнал транзакций
- •7 Связь транзакций
- •8 Уровни изоляции транзакций
- •9 Блокировки
- •10 Временные отметки
- •11 Много вариантность
- •Заключение
- •Библиографический список
Федеральное агентство железнодорожного транспорта Омский государственный университет путей сообщения Кафедра «Автоматика и системы управления»
МЕХАНИЗМ ТРАНЗАКЦИЙ Реферат по дисциплине «Управление данными»
Студент гр. 23и
___________Н.Т. Баетов «__» ________ 2015 г. Доцент кафедры АиСУ ____________ Н.А.Тихонова «__»________2015 г.
Омск 2015
Содержание
Введение 3
1 Что такое транзакции 4
2 Параллелизм 5
3 Механизм транзакций 6
4 Свойства транзакций как механизма 8
5 Варианты завершения транзакций 9
6 Журнал транзакций 10
7 Связь транзакций 12
8 Уровни изоляции транзакций 14
9 Блокировки 15
10 Временные отметки 17
11 Много вариантность 18
Заключение 19
Библиографический список 20
Введение
Применение СУБД для работы с интегрированными БД выявило особую важность проблемы целостности БД. Под целостностью БД понимают правильность и непротиворечивость ее содержимого. Нарушение целостности может быть вызвано, например, ошибками и сбоями, так как в этом случае система не в состоянии обеспечить нормальную обработку или выдачу правильных данных.
Рассмотрим два аспекта целостности – на уровне отдельных объектов и операций и на уровне базы данных в целом.
Первый аспект целостности обеспечивается на уровне структур данных и отдельных операторов языковых средств СУБД. При нарушении такой целостности (например, ввод значения больше 10 в столбец «Семестр» таблицы «Учебный план» БД «Сессия») соответствующий оператор отвергается.
Некоторые ограничения целостности не нужно выражать в ясном виде, поскольку они встроены в структуры данных. Например, в СУБД, поддерживающей структуры, составленные из записей, каждый экземпляр записи в БД должен отображать спецификацию типа записи. Это означает, что все поля, специфицированные в описании типа, должны быть представлены в каждом экземпляре записи, а значение, заносимое в отдельное поле, должно иметь соответствующий описанию тип данных.
Часто же база может иметь такие ограничения целостности, которые требуют обязательного выполнения не одной, а нескольких операций. Для обеспечения целостности в случае ограничений на базу данных, а не какие-либо отдельные операции, служит аппарат транзакций. Системы обработки транзакций так же, как и другие виды информационных и компьютерных систем, находятся в состоянии постоянного развития. Несмотря на то, что концепция, например, вложенных транзакций была выработана еще в начале 80-х годов, если не раньше, однако только недавно модели транзакций, более прогрессивные, чем простейшие плоские, начали перемещаться из экспериментальных систем в коммерческие продукты. Средства обработки транзакций имеют большое значение для поддержания целостности корпоративной информации.
1 Что такое транзакции
Транзакция – неделимая с точки зрения воздействия на БД последовательность операторов манипулирования данными (чтения, удаления, вставки, модификации), такая, что:
1) либо результаты всех операторов, входящих в транзакцию, отображаются в БД;
2) либо воздействие всех операторов полностью отсутствует.
При этом для поддержания ограничений целостности на уровне БД допускается их нарушение внутри транзакции так, чтобы к моменту завершения транзакции условия целостности были соблюдены.
Для обеспечения контроля целостности каждая транзакция должна начинаться при целостном состоянии БД и должна сохранить это состояние целостным после своего завершения. Если операторы, объединенные в транзакцию, выполняются, то происходит нормальное завершение транзакции, и БД переходит в обновленное (целостное) состояние. Если же происходит сбой при выполнении транзакции, то происходит так называемый откат к исходному состоянию БД.
Управление транзакциями необходимо для поддержания логической целостности в БД. Поддержка транзакции является обязательной для любой СУБД. К транзакции предъявляется набор требований: атомарность – транзакция реализуется по принципу «все или ничего» – либо выполняются все действия и тогда транзакция фиксируется в БД, случае сбоя, транзакция «откатывается» назад, т. е. не выполняется; согласованность – в результате выполнения транзакции система переходит из одного конкретного состояния в другое; изолированность – при выполнении транзакции, обрабатываемые ими данные не должны быть видны другим транзакциям, пока изменения не будут завершены; долговечность – если транзакция зафиксирована, ее результаты остаются навсегда.
По типу транзакции бывают:
1) плоская – в распределенной БД должны успешно завершаться все компоненты глобальной транзакции. Если неудачей завершилось изменение хотя бы одной удаленной БД, вся глобальная транзакция отменяется, и ее надо выполнить заново.
2) контрольная точка – является модификацией плоской транзакции. Они устанавливаются в прикладной программе, чтобы отметить моменты, в которых транзакцию можно повторить. Откат транзакции возможен для любой контрольной точки.
3) многозвенные транзакции позволяют фиксировать часть выполненной транзакции, возможность отката при этом исключается.