Jump to content

Кворум (распределенные вычисления)

Кворум — это минимальное количество голосов, которое должна получить распределенная транзакция, чтобы ей было разрешено выполнить операцию в распределенной системе . кворуме . Для обеспечения согласованной работы в распределенной системе реализован метод, основанный на

Методы кворума в системах распределенных баз данных

[ редактировать ]

Голосование на основе кворума может использоваться в качестве метода управления репликами . [1] а также метод фиксации для обеспечения транзакций атомарности при наличии разделения сети . [1]

Голосование на основе кворума в протоколах фиксации

[ редактировать ]

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

Каждому сайту в системе присваивается голос V i . Предположим, что общее количество голосов в системе равно V, а кворумы прерывания и фиксации равны V a и V c соответственно. Тогда при реализации протокола фиксации необходимо соблюдать следующие правила:

  1. V a + V c > V, где 0 < V c , V a V.
  2. Прежде чем транзакция будет зафиксирована, она должна получить кворум фиксации V c .
    Всего по крайней мере один сайт, готовый к фиксации, и ноль или более сайтов, ожидающих В ц . [2]
  3. Прежде чем транзакция будет прервана, она должна получить кворум прерывания V a.
    Всего ноль или более сайтов, готовых к прерыванию, или сайтов, ожидающих прерывания. И .

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

Голосование на основе кворума для управления репликами

[ редактировать ]

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

Голосование за контроль реплик на основе кворума принадлежит [Gifford, 1979]. [3] Каждой копии реплицируемого элемента данных назначается голос. Затем каждая операция должна получить кворум чтения (V r ) или кворум записи ( V w ) для чтения или записи элемента данных соответственно. Если данный элемент данных имеет в общей сложности V голосов, кворумы должны подчиняться следующим правилам:

  1. V r + V w > V
  2. V w > V/2

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

См. также

[ редактировать ]
  1. ^ Jump up to: а б Озсу, Тамер М; Вальдурье, Патрик (1991). «12». Принципы распределенных систем баз данных (2-е изд.). Река Аппер-Сэддл, Нью-Джерси: Prentice-Hall, Inc. ISBN  978-0-13-691643-7 .
  2. ^ Скин, Дейл. «Протокол фиксации на основе кворума» (PDF) . Библиотека ECommons Корнеллского университета . Проверено 10 февраля 2013 г.
  3. ^ Гиффорд, Дэвид К. (1979). Взвешенное голосование за реплицируемые данные . SOSP '79: Материалы седьмого симпозиума ACM по принципам операционных систем. Пасифик Гроув, Калифорния, США: ACM. стр. 150–162. CiteSeerX   10.1.1.12.6256 . дои : 10.1145/800215.806583 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: db6e457cd12cfb3aecae446144a7f721__1712477460
URL1:https://arc.ask3.ru/arc/aa/db/21/db6e457cd12cfb3aecae446144a7f721.html
Заголовок, (Title) документа по адресу, URL1:
Quorum (distributed computing) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)