Запрос на репликацию данных Cassandra - PullRequest
1 голос
/ 06 апреля 2020

Я понимаю, что когда мы записываем данные в Cassandra, ключ разделения хэшируется разделителем, и это значение затем используется для определения того, в каком узле кластера будут храниться данные. И затем Cassandra реплицирует эти данные по часовой стрелке в кольце узлов.

Если узел, определенный разделителем, не работает, то как Cassandra находит, какие узлы искать для записи? Разве мы не теряем преимущество разделения здесь?

Ответы [ 2 ]

2 голосов
/ 06 апреля 2020

Ха sh, который рассчитывается на основе значения ключа раздела, идентифицирует все реплики, которым принадлежат данные (если вы используете RF> 1). Это используется драйвером (при использовании политики балансировки нагрузки с учетом токенов) или координирующим узлом для отправки запроса в одну из доступных реплик, поэтому вы можете продолжать получать данные (конечно, если у вас достаточно узлов для удовлетворения указанный уровень согласованности).

1 голос
/ 06 апреля 2020

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

Для такого рода дел используется классный механизм, это намекаемая передача. Для простоты, если у вас установлен коэффициент репликации 1, а узел, ответственный за данные, не работает, координатор будет хранить для него данные некоторое время (часы), а затем, когда узел снова будет работать, координатор отправит его пропущенные данные.

Чтобы было проще, это похоже на соседа, который забирает твою почту, а тебя нет рядом. Это сделано для небольших сбоев, а не для длительного. это не будет круто, если сосед будет принимать почту годами.

Вот ссылка, объясняющая, как работают подсказки

https://www.datastax.com/blog/2011/05/understanding-hinted-handoff-cassandra-08

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...