I samband med skalning av MongoDB:
-
replikering skapar ytterligare kopior av data och möjliggör automatisk failover till en annan nod. Replikering kan hjälpa till med horisontell skalning av läsningar om du är OK att läsa data som eventuellt inte är den senaste.
-
skärning möjliggör horisontell skalning av dataskrivningar genom att partitionera data över flera servrar med en shard-nyckel . Det är viktigt att välja en bra skärvnyckel. Till exempel kan ett dåligt val av shard-nyckel leda till att "hot spots" av data bara skrivs på en enda shard.
En fragmenterad miljö ger mer komplexitet eftersom MongoDB nu måste hantera distribuerande data och förfrågningar mellan shards -- ytterligare konfigurations- och routingprocesser läggs till för att hantera dessa aspekter.
Replikering och skärning kombineras vanligtvis för att skapa ett delat kluster där varje skärva stöds av en replikuppsättning.
Ur en klienttillämpningssynpunkt har du också viss kontroll i relation till replikerings-/skärningsinteraktionen, i synnerhet:
- Läs inställningar
- Skriv frågor