Реферат: Понятие транзакции 2

Транзакция – это законченная совокупность действий над базой данных, которая переводит ее из одного целостного состояния в другое.

Управление транзакциями необходимо для поддержания логической целостности в БД. Поддержка транзакции является обязательной для любой СУБД, особенно для РИС. К транзакции предъявляется набор требований АСИД (расшифровка: атомарность – транзакция реализуется по принципу «все или ничего» - либо выполняются все действия и тогда транзакция фиксируется в БД. В случае сбоя, транзакция «откатывается» назад, т. е. не выполняется; согласованность – в результате выполнения транзакции система переходит из одного конкретного состояния в другое; изолированность – при выполнении транзакции, обрабатываемые ими данные не должны быть видны другим транзакциям, пока изменения не будут завершены; долговечность – если транзакция зафиксирована, ее результаты остаются навсегда).

По типу транзакции бывают:

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

- контрольная точка – является модификацией плоской транзакции. Они устанавливаются в прикладной программе, чтобы отметить моменты, в которых транзакцию можно повторить. Откат транзакции возможен для любой контрольной точки.

- многозвенные транзакции позволяют фиксировать часть выполненной транзакции, возможность отката при этом исключается.

Параллелизм – возникает при одновременном выполнении операций над БД любым числом пользователей.

Первая проблема – потеря обновлений – запоминаются те обновления, которые будут выполнены последними.

Вторая проблема – преждевременное чтение – работа с данными, не зафиксированными в системе.

Для разрешения проблем параллелизма в РБД используется механизм блокировок. Блокировка заключается в запрещении операций над данными, если их обрабатывает другой пользователь. Используется правило двухфазного блокирования – ни одна блокировка от имени какой либо транзакции не будет установлена, если не снята ранее установленная блокировка. Блокировки могут быть выполнены над БД, над совокупностью таблиц и над одной таблицей, над совокупностью записей, над одной записью, и над полем.

Блокировки бывают:

- пессимистические, которые запрещают доступ к данным, если какая либо транзакция уже работает с ними.

- оптимистические, которые разрешают параллельное выполнение транзакций, отслеживают возможные конфликты и устраняют их.

При работе в распределенной среде доступ может быть монопольным и разделяемым.

Управление распределенными данными

В современных РИС информация может храниться централизовано и децентрализовано.

Централизовано – проблемы идентичности представления информации для всех пользователей не существует, т.к. внесенные изменения хранятся в одном месте. В распределенных БД информация может меняться в отдельных узлах сети, поэтому необходим контроль за всеми изменениями информации и предоставлении ее в достоверном виде всем пользователям.

Существуют 2 технологии управления распределенными ресурсами:

- распределенные БД. Такая БД состоит из нескольких фрагментов, размещенных на разных узлах сети.

Информация о местоположении каждой из частей хранится в глобальном словаре данных.

Достоинством этой технологии является то, при децентрализованном хранении данных пользователи получают информацию с учетом последних изменений.

- тиражирование данных – она обеспечивает поддержку копий всей БД в узлах сети. Копии БД, которые в последствии могут быть синхронизированы, называются репликой.

В течении некоторого времени копии БД могут отличаться друг от друга. Процесс обновления реплик, при котором происходит передача обновляемых записей и согласование дублирующих записей, называется синхронизацией. Синхронизация бывает односторонняя и двусторонняя.

Виды тиражирования бывают:

- по моменту внесения изменений реплики разделяют асинхронные и синхронные. При асинхронном тиражировании обновление всех копий может производиться не одновременно. Синхронное тиражирование выполняется только после успешной модификации всех копий.

- реплики в РБД могут быть равноправными и неравноправными. В неравноправных репликах выделяют основную, которой допускается корректировать все реплики, доступные только для чтения. В равноправной все реплики доступны для чтения и корректировки.

- если инициатором тиражирования вызывает компьютер-клиент, то такое тиражирование называется обновлением по запросу. Если инициатор – сервер, то это называется принудительная рассылка тиража.

- обновление содержания реплик выполняется копированием моментального снимка БД.

Монитор транзакций

--> ЧИТАТЬ ПОЛНОСТЬЮ <--

К-во Просмотров: 272
Бесплатно скачать Реферат: Понятие транзакции 2