2016-10-04 3 views
2

У меня есть 6 узлов кластера с коэффициентом репликации 3. Я использую обычный уровень согласованности как QUORUM и последовательный уровень последовательности как SERIAL.Что произойдет, если я установил нормальный уровень согласованности в условную запись (LWT)?

У меня есть запрос условной записи (IF EXIST). Что произойдет, если я установил как нормальный, так и серийный номер этого оператора, используя драйвер datastax java, как показано ниже.

//preparedStatement has a conditional query. 
BoundStatement boundStatement = new BoundStatement(preparedStatement); 
boundStatement.setSerialConsistencyLevel(ConsistencyLevel.SERIAL); 
//is this required?? 
boundStatement.setConsistencyLevel(ConsistencyLevel.QUORUM); 

Мои запросы:

  1. Будет нормальная консистенция QUORUM будут игнорироваться или он будет принимать во внимание?
  2. Должен ли я установить только последовательный уровень согласованности в этом случае?

я упомянул ниже ссылку, но это не объясняет много https://docs.datastax.com/en/cassandra/3.x/cassandra/dml/dmlConfigSerialConsistency.html

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

Пожалуйста, объясните это простым языком.

ответ

4

Уровень последовательной согласованности используется только для фазы Paxos легкой транзакции. Если эта фаза будет успешной, то фактическая мутация (чтение или запись) будет проходить с использованием указанного «нормального» уровня согласованности.

Так, чтобы ответить на ваши вопросы:

Будет нормальная консистенция QUORUM будет игнорироваться или будет учитываться?

Это будет учтено, если легкая транзакция будет успешной и будет выполнена мутация.

Должен ли я установить только последовательный уровень согласованности в этом случае?

Каждое утверждение имеет уровень согласованности. Если вы ничего не укажете на уровне выписки, the defaults defined at cluster level apply.

+0

Спасибо за разъяснение :) – Laxmikant

+1

Если вы считаете, что мой ответ верен, не могли бы вы пометить свой вопрос, как решили, пожалуйста? Благодаря :) – adutra

 Смежные вопросы

  • Нет связанных вопросов^_^