Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Понятие и необходимость транзакций. Ограничения целостности. Транзакции и восстановление данных




Транзакция - это неделимая, с т.з. воздействия на СУБД, последовательность операций манипулирования дан-ми. Для пользователя транзакция выполняется по принципу "все или ничего", т.е. либо транзакция выполняется целиком и переводит БД из одного целостного состояния в другое целостное состояние, либо, если по каким-либо причинам, одно из действий транзакции невыполнимо, или произошло какое-либо нарушение работы системы, БД возвращается в исходное состояние, к-ое было до начала транзакции (происходит откат транзакции). С этой т.з., транзакции важны как в многопольз-ких, так и в однопольз-ких системах. В однопольз-ких системах транзакции - это логические единицы работы, после выполнения к-ых БД остается в целостном состоянии. Транзакции также являются единицами восстановления данных после сбоев - восстанавливаясь, система ликвидирует следы транзакций, не успевших успешно завершиться в рез-те программного или аппаратного сбоя. Эти 2 св-ва транзакций определяют атомарность (неделимость) транзакции. В многопольз-ких системах, кроме того, транзакции служат для обеспечения изолированной работы отдельных польз-лей – польз-лям, одновременно работающим с одной БД, кажется, что они работают как бы в однопольз-кой системе и не мешают друг другу.

Свойства транзакции (ACID): 1.Атомарность (Atomicity) транзакция должна быть выполнена в целом или не выполнена вовсе. 2.Согласованность (Consistency) – транзакция не разрушает взаимной согласованности данных. 3.Изолированность (Isolation) конкурирующие за доступ к данным транзакции физически обрабатываются последовательно, изолированно друг от друга. 4.Долговечность (Durability) при успешном завершении транзакции произведенные ею изменения в данных не могут быть потеряны.

Структура транзакции: Начало транзакции -> Действие 1 ->... Действие N -> Конец транзакции

Транзакция обычно начинается автоматически с момента присоединения пользователя к СУБД и продолжается до тех пор, пока не произойдет одно из следующих событий: 1)Подана команда COMMIT WORK (зафиксировать транзакцию). 2)Подана команда ROLLBACK WORK (откатить транзакцию). 3)Произошло отсоединение пользователя от СУБД. 4)Произошел сбой системы.

Ограничение целостности - это некоторое утверждение, к-ое может быть истинным или ложным в завис-ти от состояния БД.

Примерами ограничений целостности могут служить след. утверждения: 1.Возраст сотрудника не может быть меньше 18 и больше 65 лет. 2.Каждый сотрудник имеет уникальный табельный номер. 3.Сотрудник обязан числиться в одном отделе и т.д. Как видно из этих примеров, некоторые из ограничений целостности являются ограничениями реляционной модели дан-х.

БД находится в согласованном (целостном) состоянии, если выполнены (удовлетворены) все ограничения целостности, опр-ые для БД. Необходимо, чтобы СУБД обладала развитыми ср-вами поддержки ограничений целостности. Если какая-либо СУБД не может отобразить все необх-ые ограничения предметной области, то такая БД хотя и будет находиться в целостном состоянии с т.з. СУБД, но это состояние не будет правильным с т.з. польз-ля.

Транзакции и восстановление дан-х. Главное требование долговечности дан-х транзакций состоит в том, что дан-е зафиксированных транзакций д. сохраняться в системе, даже если в след. момент произойдет сбой системы. Требование атомарности транзакций утверждает, что не законченные или откатившиеся транзакции не д. оставлять следов в БД. Это означает, что дан-е д. храниться в БД с избыточностью, позволяющей иметь инф-цию, по к-ой восстанавливается состояние БД на момент начала неудачной транзакции. Такую избыточность обычно обеспечивает журнал транзакций, к-ый содержит детали всех операций модификации дан-х в БД, в частности, старое и новое значение модифицированного объекта, системный номер транзакции, модифицировавшей объект и др. инф-ция.

Восстановление базы данных может производиться в следующих случаях:Индивидуальный откат транзакции. Откат индивидуальной транзакции может быть инициирован либо самой транзакцией путем подачи команды ROLLBACK, либо системой. СУБД может инициировать откат транзакции в случае возникновения какой-либо ошибки в работе транзакции (например, деление на нуль) или если эта транзакция выбрана в кач-ве жертвы при разрешении тупика. ► Мягкий сбой системы (аварийный отказ ПО). Мягкий сбой хар-ется утратой оперативной памяти системы. (напр., в рез-те аварийного отключения электропитания). ► Жесткий сбой системы (аварийный отказ аппаратуры). Жесткий сбой хар-ется повреждением внешних носителей памяти. (напр., в рез-те поломки головок дисковых накопителей).

Стандарт языка SQL не содержит требований к восстановимости данных, оставляя эти вопросы на усмотрение разработчиков СУБД.





Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 1685; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.