In questo articolo vediamo come configurare un servizio di Cloud Database, denominato MongoDB Atlas, il quale consente di ospitare un database su una piattaforma di Cloud Computing (tipicamente questi servizi vengono denominati come DataBase as a Service, DBaaS).
In questo articolo vediamo come configurare un servizio di Cloud Database, denominato MongoDB Atlas, il quale consente di ospitare un database su una piattaforma di Cloud Computing (tipicamente questi servizi vengono denominati come DataBase as a Service, DBaaS).
MongoDB è uno dei più utilizzati database NoSQL grazie alla sua velocità, alla sua efficienza e semplicità di utilizzo. MongoDB è inoltre accessibile con tutti i più recenti linguaggi di programmazione quali Java, Python e Node.js.
Abbiamo scelto il servizio MongoDB Atlas perché è possibile testarlo gratuitamente scegliendo un tipo di server con RAM e CPU condivise e con una capacità di storage di 512 MB che non è davvero male per applicazioni di sviluppo! Inoltre ci consente di avere un ambiente MongoDB da testare senza bisogno di alcun tipo di installazione e gestione a livello di infrastruttura.
Iniziamo collegandoci all’url:
https://www.mongodb.com/cloud/atlas
e ci iscriviamo cliccando sul pulsante Start Free:

La procedura è completamente gratuita e non è richiesta alcuna carta di credito, inoltre saremo guidati da un Wizard che ci permetterà di configurare facilmente un Cluster MongoDB.
Creiamo il nostro primo Cluster MongoDB
Scegliamo uno Shared Cluster, in modo da iniziare gratuitamente ad utilizzare la piattaforma:

Dopo ci viene proposto di scegliere su quale Cloud Provider installare il cluster tra i seguenti: AWS, Google Cloud Platform e Azure. Scelto il Cloud Provider, dobbiamo scegliere una Region presente tra le varie messe a disposizione. La scelta del Provider e della Region non influisce sui costi o sulle performance, ma in ogni caso cerchiamo quella combinazione di Provider e Region che ci consentirà di avere meno latenza di accesso al servizio, quindi scegliamo quello con una Region possibilmente più vicina all’Italia. Ad esempio tra le Region di AWS c’è Francoforte che potrebbe essere quella più vicina.

Lasciamo il resto delle opzioni inalterate (Tier di tipo M0, quello gratuito e No Backup) e cambiamo il nome del Cluster con quello che più ci aggrada:

Clicchiamo infine su Create Cluster: ci vorrà qualche minuto prima che il Cluster venga creato e avviato. Il Cluster sarà formato da 3 repliche (Replica Set nel gergo MongoDB) ognuna delle quali mantiene gli stessi dati, fornendo ridondanza ed alta affidabilità.

Creiamo un utente
Adesso clicchiamo sul menu a sinistra Security -> Database Access e creiamo un nuovo utente:

Inseriamo username e password e diamo come privilegi quelli di lettura e scrittura ( è possibile creare anche utenti temporanei):

Abilitiamo l’accesso
Abilitiamo l’accesso al Cluster via rete Internet:

Ci viene ora richiesto di indicare un IP a cui consentire l’accesso oppure consentirlo da qualsiasi IP; scegliamo la seconda opzione visto che stiamo configurando un servizio di sviluppo:

Cliccand o su Cluster nel menu a sinistra e poi collections, possiamo creare un dataset di prova:

Alla fine della procedura verranno creati 7 database e 21 collections (una collection è molto simile ad una tabella di un database relazionale). Questi dati possono ovviamente essere cancellati cliccando sull’icona del cestino che compare su ognuno di esso, noi invece proviamo ad accedervi da remoto.

Connettiamoci al Cluster
Proviamo a connetterci al Cluster, tornando alla schermata Clusters e cliccando su Connect:

Possiamo scegliere tra tre diverse opzioni, scegliamo mongo shell e scarichiamola:

Scegliamo la nostra piattaforma (Windows, Mac o Linux) e scarichiamo la shell (sarà uno zip per Windows o un tar per Linux). Scompattiamo il pacchetto e aggiungiamo il percorso della cartella più /bin all’interno della variabile d’ambiente PATH.
Lanciamo poi il seguente comando:
mongo "mongodb+srv://nome-nostro-cluster-poduq.mongodb.net/test" --username nostro-username
sostituite le parole in grassetto con i vostri dati e date invio, vi verrà chiesta la password dello user che avevamo creato. Una volta connessi con successo al Cluster possiamo interrogarlo chiedendo i database attualmente presenti con il seguente comando:
show dbs
Otteniamo un risultato simile a questo:

Tramite la shell possiamo interagire con il nostro Cluster utilizzando l’interfaccia Javascript di MongoDB, trovate il manuale completo delle query Javascript a questo indirizzo:
COMMENTS