Изменения документа CAP теорема

Редактировал(а) Alexandr Fokin 2024/01/04 19:49

<
От версии < 2.8
отредактировано Alexandr Fokin
на 2024/01/04 19:49
К версии < 2.3 >
отредактировано Alexandr Fokin
на 2022/06/15 13:57
Изменить комментарий: Update document after refactoring.

Комментарий

Подробности

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