Как получить возможную последовательность
Возможный дубликат:
Возможная последовательность
Я новичок в Nosql, я прочитал много документов о нем, все они только говорят о возможной последовательности и не объясняют: как это работает.
Итак, может ли кто-нибудь помочь мне объяснить: как получить окончательную последовательность?
Спасибо,
1 ответ
Непротиворечивость становится проблемой, как только у вас есть несколько копий элемента данных, особенно в распределенной системе.
Теорема CAP говорит, что вы не можете иметь все три: согласованность, доступность и допуск раздела.
Если вы выбираете A и P, то вы должны отказаться от последовательности (до некоторой степени). Это означает, что разные части вашей системы могут иметь разные значения для элемента данных. Различные части системы будут постоянно пытаться поддерживать согласованность друг с другом, общаясь, но это может занять немного времени (отсюда и "возможная" согласованность).
Некоторые механизмы / протоколы для достижения согласованности описаны в ответах на этот связанный вопрос.
Так что говорить о том, "как получить возможную согласованность", не хватает смысла - конечная (или нет) согласованность - это то, что вы получаете по умолчанию в распределенной системе, если вы не будете очень осторожны (и пожертвуете хотя бы одним из Доступности и Допуска Разделения). Полностью согласованные системы должны работать усерднее, чтобы обеспечить правильную синхронизацию всех копий.