MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Dlaczego zestaw replik mongodb wymaga nieparzystej liczby węzłów głosujących?

Wyobraźmy sobie, że zestaw replik ma parzystą liczbę węzłów (na przykład 4). Wtedy zdarza się niefortunna partycja sieciowa, która dzieli zestaw na pół (2 + 2). Która partycja powinna akceptować zapisy? Pierwszy? Drugi? Obie? Co powinno się stać po przywróceniu sieci? To są trudne pytania.

Nieparzysta liczba węzłów całkowicie eliminuje pytania. Zestawu nie da się podzielić dokładnie na pół. Więc większa część zaakceptuje zapisy (dokładnie, węzeł musi widzieć więcej niż połowę węzłów (wliczając siebie), aby zostać wybrany jako podstawowy. Czyli jest to 1 z 1, 2 z 3, 3 z 5, 4 z 7 i tak dalej ).




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. W MongoDB, jeśli indeks znajduje się na 3 polach, możemy użyć tego indeksu podczas zapytania o 2 pola? (wildcard na 3 polu)

  2. Filtruj kolekcję MongoDb, jeśli tablica pól i tablica argumentów przecinają się

  3. Jak monitorować MongoDB za pomocą Prometheus i ClusterControl

  4. MongoDB $ceil

  5. W MongoDB szukaj w tablicy i sortuj według liczby dopasowań