2014-01-09 3 views

ответ

19

Некоторые ключевые различия на основе консенсуса подхода как в MongoDB 2.4 являются:

  • Плот использует сильный лидер модели. Лидер несет ответственность за управление репликацией и потоками данных от лидера до других серверов. В реплике MongoDB вторичные записи следуют за операционным журналом (oplog) ведущего хоста, который может быть либо первичным, либо вторичным с более новым всплеском.

  • Плот имеет только три состояния узлов: лидер (первичный), следящий (вторичный) или кандидат (назначенный первичный). MongoDB имеет additional node states, чтобы рассмотреть возможность включения большего количества потенциальных состояний ошибки, таких как RECOVERING или SHUNNED узлов, или delayed replica set members.

  • В плоту каждый узел может голосовать только за узел-кандидат один раз в день выборов. MongoDB позволяет изменять голоса на один узел в составе конфигурации набора реплик, поэтому некоторые узлы могут быть без голосования или, возможно, иметь несколько голосов (примечание: устаревшая конфигурация голосовых сообщений устарела, начиная с MongoDB 2.5 development branch).

  • Raft использует общий подход , который позволяет кластеру продолжать работу во время изменений конфигурации. MongoDB требует, чтобы строгое большинство узлов голосования выбирало новый первичный; в то время как выборы продолжаются, набор реплик не имеет первичной информации и не может принимать записи.

Для получения более подробной информации, вы должны сравнить бумагу Плот In Search of an Understandable Consensus Algorithm с документацией на MongoDB Replica Set Elections.

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