Мегаобучалка Главная | О нас | Обратная связь


Спецификация точки проверки



2020-02-04 191 Обсуждений (0)
Спецификация точки проверки 0.00 из 5.00 0 оценок




 

Идея точки проверки используется для минимизации глубины отката в случае обрыва транзакций. Эти точки могут быть описаны пользователем. Точки проверки свя­заны с операциями на объектах и могут быть описаны как шаг операции. Нет необ­хо­димости иметь спецификацию точки проверки для каждого объекта в системе. Одна­ко пользователь может описать точки проверки в некоторых операциях на некоторых объ­ектах, так, что каждая точка представляет логическую единицу работы. Идея уста­новки точек проверки предоставляет базе данных возможность определять, находится ли она в согласованном состоянии. Точка проверки служит как механизмом синхро­низации, так и заботой о связности базы данных. Любая пользовательская транзакция может иметь зависимость от результатов других транзакций. Таким образом, точка проверки в транзакции имеет значение только если все другие активные операции также согласны с тем, что состояние базы данных в этой точке является непротиворечивым состоянием (consistent state). При этом точка проверки действует как точка встречи, в которой все активные транзакции системы фиксируют (commit) свою, возможно, частично сделан­ную, до этой точки работу.

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

 

Состояние пользовательских транзакций на объектах

 

Каждый объект O в системе хранит состояние каждой пользовательской транзакции в системе. Состояние пользовательской транзакции (т.е. операции на DBIO) может принимать одно из следующих значений:

Никогда не активировалась (Never Activated)
Любая пользовательская транзакция, которая не воздействовала на O прямо или косвенно, находится в этом состоянии на O. Это эквивалентно тому, что не имеется никакой информации о пользовательской транзакции в O.

Завершена (Completed)
Пользовательская транзакция находится в состоянии Завершена на O, если операция вызванная ей на O закончила выполнение всех своих шагов.

Находится в точке проверки (Chekpoint)
Пользовательская транзакция не произвела никаких действий с тех пор, как оказалась в точке проверки.

Задержана для проверки (BlockedForCheckPoint)
Пользовательская транзакция ожидает выполнения условий, которые будут удовлетворять переводу ее в Точку проверки.

Выполняется (Executing)
Пользовательская транзакция выполняется на O, если операция op(O), вызванная этой транзакцией выполняется.

 

 

 

Рис 4: Диаграмма переходов транзакции из состояния в состояние

 

 

Таблица 4: Пример изменения состояния транзакции при ее выполнении

 

Действия Новое состояние транзакции
  Никогда не активировалась
Объект O получил запрос на выполнение op(O) впервые для транзакции Tr(op(O)) и op(O) начинает выполняться Выполняется
Операция транзакции достигла описанной для нее точки проверки, все остальные активные операции на O "никогда не активировались" в точке проверки Находится в точке проверки
Операция транзакции достигла описанной для нее точки проверки, но активные операции не находятся в своих точках проверки Блокирована для точки провер­ки
Tr(op(O)) закончила все свои шаги Завершена

 

 

Таким образом, если объект имеет точки проверки, описанные для своих операций, то операции встречаются (рандеву) в точке проверки. Если операции в точке проверки произведены успешно, то в будущем нет необходимости любой операции откатываться (rollback) за точку проверки.

 

 

Шаги протокола согласованного управления

 

1. Операция запрошена (requested)

2. Операция вызывает другую операцию

3. Вызванная операция возвращается

4. Операция завершена

5. Точка разрыва (breakpoint) достигнута

6. Точка проверки (checkpoint) достигнута

7. В точке проверки получено сообщение

 

Детально алгоритм выполнения шагов описан в [19].

 



2020-02-04 191 Обсуждений (0)
Спецификация точки проверки 0.00 из 5.00 0 оценок









Обсуждение в статье: Спецификация точки проверки

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (191)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.006 сек.)