В частности, я смотрел на this page, где он говорит:Каковы последствия использования легких транзакций?
Если легкие операции используются для записи строки в пределах раздела, только легкие сделки для обеих операций чтения и записи должны быть использованы.
Я смущен относительно того, как выглядит использование LWT для операций чтения. В частности, как это относится к уровням согласованности запросов (и serialConsistency).
description для чтения SERIAL
консистенции вызывает дополнительные вопросы:
позволяет считывать текущее (и, возможно, непринятого) состояние данных, не предлагая новое добавление или обновление.
Это означает, что использование SERIAL
для чтения не является «использованием LWT».
Но
- Как Cassandra знать, чтобы проверить наличие сделок в незавершенном, когда вы делаете чтения?
- Что нового обновления, которое предлагается при чтении, и как это влияет на чтение?
- Как это работает, если согласованность, которую вы читаете (например,
ONE
), меньше, чем serialConsistency, используемая для записи? - После того, как вы используете LWT на таблице (или в строке? Или столбце?), Читаются ли все, за исключением того, что заставляют брать на себя ответственность за участие в кворумах и алгоритм транзакции?
- Соответствует ли это требованию ко всей строке или только столбцам, участвующим в условной инструкции?
Если я игнорирую этот совет и выполняю как последовательные, так и не последовательные чтения/записи. Каким образом LWT не удается?
Связанные: http://stackoverflow.com/q/28836083/476716 – OrangeDog