Теорема PACELC


Теорема PACELC — расширение теоремы CAP, которое гласит, что в случае разделения сети (P) в распределённой компьютерной системе необходимо выбирать между доступностью (A) и согласованностью (C) (согласно теореме CAP), но в любом случае, даже если система работает нормально в отсутствии разделения (E), нужно выбирать между задержками (L) и согласованностью (C).

Теорема PACELC основывается на теореме CAP. Обе теоремы описывают, какие ограничения и компромиссные решения имеют распределённые базы данных в отношении согласованности, доступности и допустимости разделения. Однако, теорема PACELC заявляет, что необходимо идти на компромисс между задержками и консистентностью даже при отсутствии разделения, что обеспечивает более полное представление о возможных компромиссах для распределённых систем.[1]

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

Теорема PACELC впервые была описана Даниэлем Дж. Абади из Йельского университета в 2010 году в блоге[2] , а также в виде статьи в 2012 году[1]. Основная цель теоремы PACELC — обратиться к его тезису «Игнорирование необходимости выбора между согласованностью и задержкой в реплицируемых системах является основным упущением [в рамках CAP], поскольку необходимость этого выбора присутствует при работе системы всегда, в то время как CAP имеет отношение только к дискутируемо редкому случаю разделения сети».