Кассандра LWT читает
Насколько я понимаю, LWT-вставки всегда выполняются с уровнем согласованности SERIAL. Если это правда, означает ли это, что чтение строки, вставленной как LWT, может быть безопасно прочитано с уровнем согласованности ЛЮБОЙ?
Другими словами, я предполагаю, что вставка LWT полностью согласована, что делает любое последующее чтение также полностью согласованным, независимо от уровня согласованности?
1 ответ
Решение
Ваше предположение неверно по двум причинам.
- SERIAL только подразумевает уровень согласованности QUORUM для записей
- Существует вероятность того, что один LWT будет применен только частично во время чтения и, следовательно, не может быть безопасно прочитан любым CL
Для этого вам нужно использовать SERIAL для всех запросов, которые будут читать записи LWT. Это обеспечит отсутствие ожидающих LWT при чтении QUORUM.