Изменения документа CAP теорема
Редактировал(а) Alexandr Fokin 2026/08/20 16:31
От версии 2.7
отредактировано Alexandr Fokin
на 2023/12/16 14:12
на 2023/12/16 14:12
Изменить комментарий:
Update document after refactoring.
К версии 2.10
отредактировано Alexandr Fokin
на 2026/08/20 16:31
на 2026/08/20 16:31
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,28 +1,45 @@ 1 -CAP теорема 2 -\\ 1 +|(% style="width:77px" %) |(% style="width:1408px" %)CAP теорема 2 +|(% style="width:77px" %) |(% style="width:1408px" %)[[Кластер>>doc:Разработка.Базы данных.Механизмы.Кластер.WebHome]] 3 +|(% style="width:77px" %) |(% style="width:1408px" %)Всё, что вы не знали о CAP теореме 4 +https://habr.com/ru/post/328792 5 +|(% style="width:77px" %) |(% style="width:1408px" %)((( 6 +Понятие Split Brain 3 3 4 -|(% style="width:164px" %)Понятие Split Brain|(% style="width:1318px" %)Ситуация 1: кластер расположен в одном сетевом сегменте, ноды кластера могут связываться друг с другом. 5 -Ситуация 2: происходит потеря связи, распад на несколько сегментов, которые не могут передавать данные друг другу. 6 - 7 ----- 8 - 9 -|(% style="width:107px" %) |(% style="width:199px" %) |(% style="width:1176px" %) 10 -|(% style="width:107px" %)Consistency|(% style="width:199px" %)Согласованность данных|(% style="width:1176px" %)В каждый момент времени все узлы возвращают одинаковые наборы данных по одним и тем-же агрегатам. Отсутствие рассинхронизации данных. 11 -|(% style="width:107px" %)Availability|(% style="width:199px" %)Доступность|(% style="width:1176px" %) Каждый узел (не упавший) всегда успешно выполняет запросы (на чтение и запись) 12 -|(% style="width:107px" %)Partition tolerance|(% style="width:199px" %)Устойчивость к разделению|(% style="width:1176px" %)Ноды приложения продолжают работать, даже если связь между ними нарушена и синхронизация невозможна. В таком случае при запросе данных с разных нод мы можем получить различные агрегаты. 13 - 14 ----- 15 - 8 +Ситуация распада кластера узлов на несколько сегментов, в следствии нарушения связи (сети) между сегментами. Каждый сегмент становиться автономным и не может обмениваться данными с другими сегментами. Каждый сегмент принимает решение о продолжение работы. 9 +))) 10 +|(% style="width:77px" %) |(% style="width:1408px" %)((( 11 +|(% style="width:99px" %)Consistency|(% style="width:141px" %)Согласованность данных|(% style="width:1107px" %)В каждый момент времени все узлы возвращают одинаковые наборы данных по одним и тем-же агрегатам. Отсутствие рассинхронизации данных. 12 +|(% style="width:99px" %)Availability|(% style="width:141px" %)Доступность|(% style="width:1107px" %) Каждый узел (не упавший) всегда успешно выполняет запросы (на чтение и запись) 13 +|(% style="width:99px" %)Partition tolerance|(% style="width:141px" %)Устойчивость к разделению|(% style="width:1107px" %)Узлы приложения продолжают работать, даже если связь между ними нарушена и синхронизация невозможна. В таком случае при запросе данных с разных узлов мы можем получить различные агрегаты. 14 +))) 15 +|(% style="width:77px" %) |(% style="width:1408px" %)((( 16 16 |(% colspan="2" %)Невозможно в полной мере выполнять все 3 условия. 17 17 |(% style="width:69px" %)AP|(% style="width:1413px" %)В случае невозможности синхронизации данных (Split Brain), все узлы продолжают работу, даже с учетом рассинхронизации данных. 18 18 |(% style="width:69px" %)CP|(% style="width:1413px" %)Все узлы системы перестают работать, если не могу синхронизировать данные между собой. 19 19 |(% style="width:69px" %) |(% style="width:1413px" %)Возможно ситуация, когда разрозненные сегменты имеет механизм принятия решения о том, стоит ли продолжать обрабатывать запросы. 20 20 Например: в случае если исходный кластер состоял из нечетного кол-ва узлов и распался на 2 сегмента, то сегмент, содержащий наибольшую кол-во узлов (относительно исходного кол-ва в кластере), продолжит работу. 21 +))) 21 21 22 22 ---- 23 23 24 -Всё, что вы не знали о CAP теореме 25 -https://habr.com/ru/post/328792 25 +==== Внутренние ссылки: ==== 26 26 27 +====== Дочерние страницы: ====== 27 27 28 - 29 +{{children/}} 30 + 31 +====== Обратные ссылки: ====== 32 + 33 +{{velocity}} 34 +#set ($links = $doc.getBacklinks()) 35 +#if ($links.size() > 0) 36 + #foreach ($docname in $links) 37 + #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument()) 38 + * [[$escapetool.xml($rdoc.fullName)]] 39 + #end 40 +#else 41 + No back links for this page! 42 +#end 43 +{{/velocity}} 44 + 45 +----