LINUX.ORG.RU

История изменений

Исправление Psilocybe, (текущая версия) :

доказательство найти не могу

Потому что в общем случае она не верна.

Итак, формулировка теоремы

В любой реализации распределённых вычислений возможно обеспечить не более двух из трёх следующих свойств:

    согласованность данных (англ. consistency) — во всех вычислительных узлах в один момент времени данные не противоречат друг другу;
    доступность (англ. availability) — любой запрос к распределённой системе завершается корректным откликом, однако без гарантии, что ответы всех узлов системы совпадают;
    устойчивость к разделению (англ. partition tolerance) — расщепление распределённой системы на несколько изолированных секций не приводит к некорректности отклика от каждой из секций.

Для ее опровержения достаточно построить опроверкающий пример.

Рассмотрим сеть из узлов с полностью локализованными данными, то есть такой, в которой каждый узел работает только со своими данными и у каждого узла свой набор клиентов.

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

Что и требовалось доказать.

Исходная версия Psilocybe, :

доказательство найти не могу

Потому что в общем случае она не верна.

Итак, формулировка теоремы

В любой реализации распределённых вычислений возможно обеспечить не более двух из трёх следующих свойств:

    согласованность данных (англ. consistency) — во всех вычислительных узлах в один момент времени данные не противоречат друг другу;
    доступность (англ. availability) — любой запрос к распределённой системе завершается корректным откликом, однако без гарантии, что ответы всех узлов системы совпадают;
    устойчивость к разделению (англ. partition tolerance) — расщепление распределённой системы на несколько изолированных секций не приводит к некорректности отклика от каждой из секций.

Для ее опровержения достаточно построить опроверкающий пример.

Рассмотрим сеть из узлов с полностью локализованными данными, то есть такой, в которой каждый узел работает только со своими данными и у каждого узла свой набор клиентов.

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

Что и требовалось доказать.