Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Модель с блокировками для чтения и записи.Содержание книги
Поиск на нашем сайте
Если элемент блокирован для записи, то на его значение воздействует функция . Если для чтения – значение элемента не изменяется. Метод проверки сериализуемости расписания: Строится граф предшествования. Узлы – транзакции. Дуги определяются следующим образом: 1) Транзакция устанавливает блокировку для чтения элемента А, транзакция , следующая за , устанавливает блокировку для записи А. Строится дуга из в . 2) Транзакция устанавливает блокировку для записи А, а транзакция , следующая за ней (если она существует) устанавливает блокировку так же для записи. Тогда строим дугу из в . Пусть далее, блокирует А для чтения после того, как снимет свою блокировку для записи, но перед тем, как установит свою блокировку для записи. Если не существует, то любая транзакция, которая блокирует А для чтения после того, как разблокирует его. Тогда строим дугу из в . 3) Если граф имеет циклы, то расписание не сериализуемо.
Параллельный доступ к иерархически структурированным элементам. Во многих случаях совокупность элементов, к которым транзакция осуществляет доступ, может рассматриваться как дерево: 1) элементы являются узлами В-дерева; 2) логическая БД структурирована согласно иерархической модели; 3) РБД может иметь элементы на 4-х уровнях: а) БД в целом; б) каждое отношение; в) каждый блок, в котором хранится файл, соответствующий отношению; г) каждый кортеж. При блокировке элементов можно придерживаться 2-х разных стратегий: 1) Блокировка элемента может предполагать и блокировку всех элементов, являющихся его потомками. Такая стратегия экономит время, т.к. она исключает блокировку более мелких элементов. 2) Блокировать элемент без блокировки его потомков. Будем говорить, что транзакция подчиняется протоколу для дерева, если за исключением первого заблокированного элемента нельзя заблокировать никакой другой элемент, пока не будет разблокирован родительский узел. Терема: Любое расписание транзакций, подчиняющееся протоколу для дерева, сериализуемо. Пример: : LOCK A : LOCK B LOCK D UNLOCK B LOCK B LOCK C : LOCK E UNLOCK D LOCK F UNLOCK A LOCK G UNLOCK C UNLOCK E LOCK E UNLOCK F UNLOCK B UNLOCK G UNLOCK E
o A
B o o C
D o o E
F o o G
FIRST() – первый из элементов, блокируемых транзакцией . FIRST() = A FIRST() = B FIRST() = E Обе транзакции и блокируют В, причём первой это делает . Строим . и блокируют Е, первой это делает : . Отсюда существуют две последовательности расписаний: , , и , , .
|
||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 189; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.22.217.176 (0.005 с.) |