MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

In Mongo qual è la differenza tra sharding e replica?

Nel contesto del ridimensionamento di MongoDB:

  • replica crea copie aggiuntive dei dati e consente il failover automatico su un altro nodo. La replica può aiutare con il ridimensionamento orizzontale delle letture se sei d'accordo a leggere dati che potenzialmente non sono gli ultimi.

  • partitura consente il ridimensionamento orizzontale delle scritture dei dati partizionando i dati su più server utilizzando una chiave shard . È importante scegliere una buona chiave shard. Ad esempio, una scelta sbagliata della chiave shard potrebbe portare a "punti critici" di dati scritti solo su un singolo shard.

Un ambiente con partizioni aggiunge maggiore complessità perché MongoDB ora deve gestire la distribuzione di dati e richieste tra partizioni:vengono aggiunti ulteriori processi di configurazione e routing per gestire questi aspetti.

Replica e partizionamento orizzontale vengono in genere combinate per creare un cluster partizionato dove ogni shard è supportato da un set di repliche.

Dal punto di vista dell'applicazione client hai anche un certo controllo in relazione all'interazione replica/sharding, in particolare:

  • Leggi le preferenze
  • Scrivi preoccupazioni