2015-03-03 6 views
4

Насколько я понимаю, вставки LWT всегда выполняются с уровнем согласованности SERIAL. Если true, означает ли это, что чтение строки, вставленной как LWT, можно безопасно читать с уровнем согласованности ЛЮБОЙ?Cassandra LWT читает

Другими словами, я полагаю, что вставка LWT полностью согласована, делая любое последующее чтение также полностью согласованным, независимо от уровня согласованности?

+0

ANY не является приемлемым уровнем согласованности для чтения: ONE является минимальным. ЛЮБОЕ - только для записи. –

+0

@GQuintana, спасибо за разъяснение. ONE для чтения только тогда, а если нет, какая разница между ANY и ONE для записи? – nilskp

+2

Для записи ЛЮБОЙ означает запрос на пожар и забыть, а ОДИН - запрос на пожар и ожидание подтверждения одной реплики. Вы не можете использовать ЛЮБОЙ для чтения, потому что вам нужна хотя бы одна реплика, чтобы получить ответ. –

ответ

9

Ваше предположение неверное по двум причинам.

  1. SERIAL подразумевает только QUORUM уровень соответствия для записи
  2. Существует вероятность того, что один LWT будет частично применяться только во время чтения и, следовательно, не может быть надежно считывать с любой CL

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

+0

Я не понимаю ваш второй момент. Серийный как Quorum (еще сильнее) и Quorum + One> RF/2. –

+0

«Полностью согласованный» в контексте LWT подразумевает, что все реплики были успешно записаны с помощью QUORUM. Если вы читаете, в то время как LWT все еще выполняется, вы можете прочитать частичные результаты. Только чтение с помощью SERIAL гарантирует, что вы никогда не увидите незавершенные записи для этого случая, так как прочитанное SERIAL будет следить за тем, чтобы не было ожидающих LWT. –

+0

@StefanPodkowinski, применимо ли это в случае, когда LWT включает в себя одну строку, как чтение, так и запись? И если да, то потому, что столбцы применяются индивидуально? – nilskp

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