Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Управление параллельной обработкой в распределенных БДСодержание книги
Поиск на нашем сайте
При параллельной обработке данных (совместной работе нескольких пользователей с общими данными) СУБД должна гарантировать, что пользователи не будут мешать друг другу (сюда относятся, например, проблемы потерянного обновления, зависимости от промежуточных результатов, несогласованности обработки, несогласованности многих копий данных) и их деист вия будут изолированы. Такими единицами изолированности являются транзакции — неделимая (с точки зрения воздействия на состояние целостности БД) последовательность операторов управления данными. Решения по организации управления параллельным выполнением в распределенной среде основаны на подходах с использованием механизмов блокировок и временных отметок: • механизм блокировки создает такие условия, что график параллельного выполнения транзакций будет эквивалентен некоторому (но, в общем случае, непредсказуемому) варианту последовательного выполнения этих транзакций; • механизм обработки временных отметок гарантирует, что график параллельного выполнения транзакций будет эквивалентен конкретному варианту последовательного выполнения этих транзакций в соответствии с их временными отметками. Механизм блокировки реализуется в виде следующих протоколов двухфазной блокировки (2PL — two-phase lock): 1. При использовании централизованного протокола двухфазной блокировки существует единственный узел, на котором хранится вся информация о блокировке элементов данных в системе. Поэтому во всей распределенной СУБД существует только один диспетчер блокировок, способный устанавливать и снимать блокировку с элементов данных. 2. При двухфазной блокировке с первичными копиями функции диспетчера блокировок распределены по нескольким узлам. Каждый локальный диспетчер отвечает за управление блокировкой некоторого набора элементов данных. В процессе репликации для каждого копируемого элемента данных одна из копий выбирается в качестве первичной копии, а все остальные Рассматриваются как вторичные (зависимые). 3-При использовании распределенного протокола двухфазной блокировки диспетчеры блокировок размещены в каждом узле системы. Каждый отвечает за управление блокировкой данных, находящихся на его узле. Если данные не подвергаются репликации, этот протокол функционирует аналогично протоколу двухфазной блокировки с первичными копиями. В противном случае распределенный протокол двухфазной блокировки использует особый протокол управления репликацией, получивший название «чтение одной копии и обновление всех копии». В этом случае для операций чтения может использоваться любая копия элемента, но прежде чем можно будет обновит значение элемента, должны быть установлены исключительные блокировки на всех копиях. 4. При использовании протокола блокировки большинства копий диспетчер блокировок также имеется на каждом из узлов системы, но, когда транзакции требуется считать или записать элемент данных, копии которого имеются на узлах системы, она должна отправить запрос на блокировку этого элемента более чем на половину из всех тех узлов, где имеются его копии. Транзакция не имеет права продолжать свое выполнение пока не установит блокировки на большинстве копий элемента данных. Если ей не удастся это сделать за некоторый установленный промежуток времени, она отменяет свои запросы и информирует все узлы об отмене ее выполнения. Двухфазные протоколы не могут устранить возможность взаимной блокировки, поскольку при их использовании может возникнуть ситуации, когда некоторый узел остается заблокированным. Например, процесс, который обнаружил истечение тайм-аута после отправки своего согласия на фиксацию транзакции, но так и не получил глобального подтверждения от координатора, остается заблокированным, если может взаимодействовать только с узлами, которые также не имеют сведений о принятом глобальном решении. Неблокирующий протокол трехфазной фиксации транзакций не имеет периода ожидания в состоянии неопределенности, в которое переходят участники с момента подтверждения своего согласия на фиксацию транзакции и до момента получения от координатора извещения о глобальной фиксации или глобальном откате. В трехфазном протоколе между этапами голосования и принятия глобального решения вводится третий этап, называемый предфиксацией. После получения результатов голосования всех участников координатор рассылает глобальное сообщение precommit. Таким образом, участник, получивший глобальное извещение о предфиксации, знает, что все остальные участники проголосовали за фиксацию результатов транзакции и что со временем сам этот участник также выполнит фиксацию транзакции, если не произойдет отказ. Далее каждый участник подтверждает получение сообщения о предфиксации, и после чего координатор, получив все подтверждения, рассылает команду глобальной фиксации транзакции.
|
||||
Последнее изменение этой страницы: 2021-04-05; просмотров: 81; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.131.13.24 (0.009 с.) |