Последовательность в Кассандре;

Опубликовано: 16 Августа, 2021

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

Что такое согласованность кворума?
Согласованность кворума - это согласованность в Cassandra для высокого механизма и гарантия того, сколько узлов ответят, когда мы определим согласованность чтения и записи в Cassandra. При согласованности кворума большинство (n / 2 +1) узлов реплик должны отвечать.

В Quorum мы проверяем большинство реплик (что просто означает количество факторов репликации). например, если у нас коэффициент репликации 3 в 2 центрах обработки данных, то сколько их реплик будет там. Итак, их будет 6, а большинство - 4. (total_sum_replicas / 2 + 1).

Как правило, мы используем локальный кворум в большинстве случаев, когда нам нужно 2 узла из ЛОКАЛЬНОГО контроллера домена, чтобы добиться успеха, когда есть три реплики в каждой из 3 центров обработки данных.

Теперь мы просто собираемся определить для него CQL-запрос. Давайте посмотрим.

СОЗДАТЬ KEYSPACE cluster1
с репликацией = {'class': 'NetworkTopologyStrategy', 
                     «DC1»: 3, «DC2»: 3, «DC3»: 3}
И DURABLE_WRITES = false;

Для проверки результатов использовался следующий CQL-запрос, приведенный ниже.

 ВЫБРАТЬ * 
ИЗ system_schema.keyspaces;

Выход:

Как рассчитывается КВОРУМ?
Вот как мы рассчитываем кворум, который просто означает, сколько узлов подтвердят.

 Кворум = (sum_of_replication_factors / 2) + 1

Кворум равен сумме коэффициентов репликации, деленной на 2 и прибавленной 1. Это потому, что сделать его целым числом.

Согласованность кворума:
Сумма всех параметров replication_factor для каждого центра обработки данных равна sum_of_replication_factors.

 Total_sum_of_replication_factor = DC1_RF + DC2_RF + DC3_RF + ... + DC_RF 

Как работает согласованность кворума?
Если есть три узла, которые составляют большинство, и они должны отвечать в согласованности кворума, то на приведенной ниже диаграмме подтверждение показывает, что есть три узла, которые отвечают, и во время записи данных затем зафиксированные узлы показывают, что мы передали наши данные в три узла.

На приведенной выше диаграмме, если мы вставляем данные в таблицу и RF = 3, это означает, что данные будут реплицироваться на трех узлах, которые будут доступны, и это показано на зафиксированной диаграмме. В случае диаграммы подтверждения, если мы читаем данные, а всего 5 узлов и применяем согласованность кворума, то (5/2 +1) узлы должны ответить. Итак, на диаграмме ясно, как три узла доступны и подтверждают одно и то же.