Per prevenire guasti e altri in­con­ve­nien­ti, è con­si­glia­bi­le uti­liz­za­re Re­pli­ca­set di MongoDB, il comando che consente di mantenere copie dei vostri dati su diversi server e che li rende di­spo­ni­bi­li senza inutili perdite di tempo.

Cos’è Re­pli­ca­set in MongoDB?

Il prin­ci­pa­le obiettivo di un sistema di gestione di database come MongoDB è quello di me­mo­riz­za­re i dati in modo tra­spa­ren­te e sicuro. Un im­por­tan­te strumento per la pro­te­zio­ne dei set di dati è co­sti­tui­to da Re­pli­ca­set di MongoDB. Grazie a questo metodo, i set di dati vengono duplicati ac­cu­ra­ta­men­te e di­stri­bui­ti su diversi nodi di server dif­fe­ren­ti. In MongoDB si distingue tra nodi primari e secondari.

  • Primari: il nodo primario viene anche chiamato nodo master. Si tratta del punto di partenza dal quale vengono creati i Re­pli­ca­set di MongoDB, e dispone di permessi di lettura e scrittura.
  • Secondari: i nodi secondari non sono altro che copie esatte del nodo master, i quali vengono uti­liz­za­ti esclu­si­va­men­te per la me­mo­riz­za­zio­ne dei dati copiati e in genere non hanno l’accesso in lettura e scrittura. Soltanto in caso di guasto di quello primario, subentra un nodo se­con­da­rio che so­sti­tui­sce il master. Con­si­glia­mo di creare sempre un numero dispari di nodi secondari.

Come funziona Re­pli­ca­set?

Come accennato, un Re­pli­ca­set di MongoDB consiste in un nodo primario e in diversi nodi secondari, generati da copie esatte del master. No­no­stan­te la presenza di almeno due nodi secondari, se ne consiglia un minimo di tre copie. La tra­smis­sio­ne dei dati avviene sempre e solo dal nodo primario ai nodi secondari. In caso di guasto del nodo primario dovuto a un errore, a un guasto del sistema o a un in­ter­ven­to di ma­nu­ten­zio­ne ne­ces­sa­rio, un nodo se­con­da­rio prende au­to­ma­ti­ca­men­te il posto del master, as­si­cu­ran­do così la con­ti­nui­tà dei dati per tutta la durata del guasto. Se ri­pa­ra­bi­le, il nodo difettoso diventa il nodo se­con­da­rio.

Quali vantaggi offre un Re­pli­ca­set?

L’uso di un Re­pli­ca­set in MongoDB comporta numerosi vantaggi. Da una parte, come abbiamo visto, è utile dal punto di vista della sicurezza, dal momento che in caso di guasto tem­po­ra­neo o per­ma­nen­te di un server, i dati me­mo­riz­za­ti rimangono sempre ac­ces­si­bi­li e non vanno persi. Un altro grande vantaggio è la di­spo­ni­bi­li­tà continua: persino durante gli in­ter­ven­ti di ma­nu­ten­zio­ne, infatti, non è ne­ces­sa­rio fare a meno dei propri dati, i quali sono re­cu­pe­ra­bi­li co­mo­da­men­te da un nodo se­con­da­rio. In questo modo la velocità di ese­cu­zio­ne aumenta con­si­de­re­vol­men­te così da rendere tempi di inat­ti­vi­tà e problemi al server una pre­oc­cu­pa­zio­ne del passato.

Consiglio: MongoDB gestito da IONOS

Con Managed MongoDB from IONOS enables you to con­cen­tra­te on the es­sen­tials. From in­stal­la­tion to operation and main­te­nan­ce work, IONOS makes sure you always get the best per­for­man­ce from your data banks.

Come creare un Re­pli­ca­set in MongoDB

Il terzo grande vantaggio di un Re­pli­ca­set MongoDB è la sua facilità d’uso. I Re­pli­ca­set sono fa­cil­men­te creabili in MongoDB, così da garantire in modo in­di­pen­den­te la migliore sicurezza possibile per i propri dati. Di seguito ri­por­tia­mo la sintassi di base del comando MongoDB --replSet:

mongod --port "PORT" --dbpath "VOSTRO_DB_DATA_PATH" --replSet "NOME_DEL_REPLICASET”

Per creare un Re­pli­ca­set in MongoDB, procedete come segue:

  1. In­nan­zi­tut­to, chiudete tutti i server MongoDB in funzione.
  2. A questo punto, immettete il comando. In questo esempio abbiamo scelto le seguenti spe­ci­fi­che:
mongo --port 32014 --dbpath "D:\set up\mongodb\data" --replSet esempio

In questo modo viene creata un’istanza mongod con il nome “esempio” sulla porta 32014.

  1. Ora stabilite una con­nes­sio­ne con l’istanza.
  2. Servitevi del comando rs.initiate() per avviare un nuovo Re­pli­ca­set in MongoDB.
  3. Con l’aiuto del comando rs.conf() potete con­fi­gu­ra­re il Replica set di MongoDB e ve­ri­fi­car­ne lo stato mediante il comando rs.status().
  4. Ora, per invitare persone a col­la­bo­ra­re al vostro Re­pli­ca­set MongoDB av­va­le­te­vi del comando rs.add(), la cui sintassi ha il seguente aspetto:
rs.add(HOST_NAME:PORT)

Applicata al nostro esempio, sarà così:

>rs.add("esempio1.net:32014")
Consiglio

Seguite il nostro tutorial su MongoDB per imparare le basi del sistema di gestione di database.

Vai al menu prin­ci­pa­le