Ett replika set är en uppsättning datorer som är kloner av varandra. (dvs:repliker ) Inom en given uppsättning finns en vald mästare. Som standard går läsningar och skrivningar till denna valda mästare och replikerna "slutar" bara ändringarna till att vara uppdaterade kopior. Om mastern misslyckas väljs en ny och systemet fortsätter bara. Dokumentationen finns här .
Så du frågar om skalning med MongoDB. Det finns två typer av skalning:
Minsta konfiguration för replikauppsättningar är- 2 fulla repliker- 1 arbiter (lätt process, bryter banden vid röstning)
Minsta konfiguration för Sharding är- 1 konfigurationsserver- 1 mongod
process (endast en shard) - 1 eller fler mongos
(vanligtvis på appserver)
Däremot vill du förmodligen inte köra så här i produktionen. Att bara köra en enda DB innebär att du bara har en källa för data vilket kan resultera i stora stilleståndstider eller total dataförlust. Detta löses i allmänhet genom att använda replikuppsättningar.
Dessutom är konfigurationsservern ganska viktig. MongoDB stöder 1 eller 3 konfigurationsservrar. De flesta produktionsinstallationer använder 3. Observera att konfigurationsservrar och arbiters är mycket lätta och kan leva på andra boxar eller på Amazons mikroinstanser.
De flesta produktionsinstallationer med skärning involverar också replikuppsättningar. Faktum är att de vanligtvis börjar som replikuppsättningar.
Ur ett skärningsperspektiv bör det vara så enkelt som:- starta ny shard-server- kör mongos
Observera att när du lägger till en shard måste du ta med tid och resurser eftersom data migrerar mellan shards och allt återbalanseras.