MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Mengapa kita membutuhkan 'arbiter' dalam replikasi MongoDB?

Saya membuat spreadsheet untuk lebih menggambarkan efek node Arbiter dalam Kumpulan Replika.

Ini pada dasarnya bermuara pada poin-poin ini:

  1. Dengan RS dari 2 node data , kehilangan 1 server membawa Anda di bawah minimum voting Anda (yaitu "lebih besar dari N/2"). Seorang arbiter menyelesaikan ini.
  2. Dengan RS dari node data bernomor genap , menambahkan Arbiter meningkatkan toleransi kesalahan Anda sebesar 1 tanpa memungkinkan adanya 2 kelompok pemungutan suara karena perpecahan.
  3. Dengan RS dari node data bernomor ganjil , menambahkan Arbiter akan memungkinkan pemisahan untuk membuat 2 kluster terisolasi dengan suara "lebih besar dari N/2" dan oleh karena itu skenario otak terbelah.

Pemilihan dijelaskan [dengan buruk] detail di sini. Dalam dokumen itu menyatakan bahwa RS dapat memiliki 50 anggota (bilangan genap) dan 7 anggota voting. Saya menekankan "keadaan" karena tidak menjelaskan bagaimana itu bekerja. Bagi saya tampaknya jika Anda memiliki perpecahan terjadi dengan 4 anggota (semua pemungutan suara) di satu sisi dan 46 anggota (3 suara) di sisi lain, Anda lebih suka 46 memilih primer dan 4 untuk dibaca- hanya klaster. Tapi, itulah yang mencegah "pemungutan suara terbatas". Dalam situasi itu Anda sebenarnya akan memiliki cluster 4 anggota dengan cluster utama dan 46 anggota yang hanya bisa dibaca. Menjelaskan bagaimana hal itu masuk akal berada di luar cakupan pertanyaan ini dan di luar pengetahuan saya.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Membuat ID Objek khusus di MongoDB

  2. Bekerja dengan karakter khusus dalam koleksi Mongo

  3. bagaimana saya bisa terhubung ke server mongo jarak jauh dari terminal Mac OS

  4. Redis vs MongoDB

  5. Keamanan MongoDB - Sumber Daya untuk Menjaga Keamanan NoSQL DB