7
mongodbのドキュメントには、レプリカセットに奇数の投票ノードが必要であることが示唆されています。これの理由は何ですか?mongodbレプリカセットに奇数の投票ノードが必要なのはなぜですか?
mongodbのドキュメントには、レプリカセットに奇数の投票ノードが必要であることが示唆されています。これの理由は何ですか?mongodbレプリカセットに奇数の投票ノードが必要なのはなぜですか?
レプリカセットに偶数のノード(たとえば4個)があるとしましょう。そして不幸なネットワークパーティションが発生し、セットが半分(2 + 2)に分割されます。書き込みを許可するパーティションはどれですか?最初?二番目?どちらも?ネットワークが復旧したらどうなるのでしょうか?これらはすべて難しい質問です。
ノード数が奇数であれば、質問が完全になくなります。セットは正確に半分に分割することはできません。したがって、大きな部分は書き込みを受け入れます(正確には、ノードは自己を含むノードの半分以上をプライマリとして選択する必要があります)ので、1の1、3の2、3の5、4の7など)。
正解 - MongoDBの投票は、クォーラムの概念に基づいています。http://en.wikipedia.org/wiki/Quorum_(distributed_computing) – sweaves
ところで、これはスプリットブレインと呼ばれています。詳細が必要な場合は、検索してください。 –
私の無知を認め、素朴な質問をしてみましょう...奇数番号のレプリカセットで1つのノードだけがダウンした場合、「ノードの数が偶数」よりも多くなります。 1つのノードがダウンする確率は、2つのノードがダウンする確率よりも大きいように見えます。だから、なぜあなたは偶数のノードがより大きな確率を持つイベントに対して警戒することを望みませんか? – JohnC