2015-02-06 14 views
18

Mentre stavo esaminando la documentazione di mongoDb, ho trovato due termini diversi "mongod" e "mongos".Qual è la differenza esatta tra mongod e mongos

Durante l'avvio del server, sto utilizzando './mongod --dbpath < percorso a mongodb>' e sto eseguendo './mongo' per connettersi al server.

Ho cercato di trovare le differenze esatte, ma non ho trovato una risposta migliore.

Qualcuno può chiarire le differenze tra questi due termini.

risposta

26

mongod è il daemon, mongo è il client, mongos è il 'MongoDB Shard Utility'. Date un'occhiata a man mongos:

Mongos per "MongoDB Shard", è un servizio di routing per le configurazioni shard MongoDB che elabora le richieste del livello di applicazione, e determina la posizione di questi dati nel cluster sharded, al fine per completare queste operazioni. Dal punto di vista dell'applicazione, un'istanza mongos si comporta in modo identico a qualsiasi altra istanza di MongoDB.

8

I componenti principali del pacchetto MongoDB sono: mongod - processo di database nucleo; mongos - il controller e il router di query per cluster pieni; e mongo la shell interattiva MongoDB.

Per ulteriori informazioni http://docs.mongodb.org/manual/reference/program/

0

Nei cluster coccio, mongod come un processo di dati frammento e il processo di metadati negozio di frammento. mongos come processo di instradamento per manipolare la richiesta del cliente.

1

Mongos = MongoDB Shard Utility, il controller e il router di query per cluster di dimensioni ridotte. Sharding partiziona il set di dati in parti discrete.

Mongod = Il processo del daemon primario per il sistema MongoDB. Gestisce le richieste di dati, gestisce l'accesso ai dati ed esegue operazioni di gestione in background.

Questa spiegazione della replica e dello sharding di mongo mi ha aiutato molto a capirlo: https://dba.stackexchange.com/a/53705/106925

Problemi correlati