Un jeu de répliques est un ensemble d'ordinateurs qui sont des clones les uns des autres. (c'est-à-dire :répliques ) Dans un ensemble donné, il y a un maître élu. Par défaut, les lectures et les écritures vont à ce maître élu et les répliques ne font que suivre les modifications pour être des copies à jour. Si le maître tombe en panne, un nouveau est élu et le système continue de fonctionner. La documentation est ici .
Vous posez donc des questions sur la mise à l'échelle avec MongoDB. Il existe deux types de mise à l'échelle :
- Mise à l'échelle de lecture :utilisez des ensembles de répliques (voir ici )
- Échelle d'écriture :utilisez Sharding
La configuration minimale pour les ensembles de réplicas est- 2 répliques complètes- 1 arbitre (processus léger, rompt les égalités lors du vote)
La configuration minimale pour Sharding est- 1 serveur de configuration- 1 mongod
processus (un seul fragment) - 1 ou plusieurs mongos
(généralement sur le serveur d'application)
Cependant, vous ne voulez probablement pas fonctionner comme ça en production. L'exécution d'une seule base de données signifie que vous n'avez qu'une seule source pour les données, ce qui peut entraîner des temps d'arrêt importants ou une perte totale de données. Ce problème est généralement résolu en utilisant des jeux de répliques.
De plus, le serveur de configuration est assez important. MongoDB prend en charge 1 ou 3 serveurs de configuration. La plupart des déploiements de production utilisent 3. Notez que les serveurs de configuration et les arbitres sont très légers et peuvent vivre sur d'autres boîtiers ou sur des micro-instances Amazon.
La plupart des déploiements de production avec partitionnement impliquent également des jeux de réplicas. En fait, ils commencent généralement par des jeux de répliques.
Du point de vue du partage, il devrait être aussi simple que :- démarrer un nouveau serveur de fragments - exécuter le addshard
commande depuis un mongos
Notez que lorsque vous ajoutez une partition, vous devez prévoir du temps et des ressources au fur et à mesure que les données migrent entre les partitions et que tout se rééquilibre.