Выбор ответа Senior NoSQL и выбор хранилища обновлено

Кворум R + W > N

Вопрос

В leaderless-хранилище каждая запись хранится на N = 3 репликах. Какая настройка гарантирует, что чтение увидит последнюю подтверждённую запись (при отсутствии сбоев во время операции)?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: W = 2, R = 2. Если записали на W реплик и читаем с R реплик, при R + W N множества обязательно пересекаются хотя бы в одной реплике со свежим значением: 2 + 2 3.

Варианты ответа

  1. W = 2, R = 2правильный ответ
  2. W = 1, R = 1
  3. W = 1, R = 2
  4. W = 2, R = 1

Разбор

Если записали на W реплик и читаем с R реплик, при R + W > N множества обязательно пересекаются хотя бы в одной реплике со свежим значением: 2 + 2 > 3. При W = 1, R = 2 или W = 2, R = 1 сумма равна 3, и можно прочитать как раз с тех реплик, куда запись ещё не дошла. W = 1, R = 1 даёт максимальную скорость и минимальные гарантии.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.