MongoDB

MongoDB è diventato popolare sia in ambito accademico che professionale. L'utilizzo di questo sistema di database consente di archiviare dati non strutturati in modo molto semplice. In genere, questo tipo di database deve essere posizionato in un ambiente facilmente accessibile.
Per l'articolo completo su MongoDB ...

Mostra filtro
Filtri di hosting
A2 Themes & Host Me Filter

Sistema operativo

Spazio sul disco

Memoria RAM

Tipo di disco

Core della CPU

Ordinare

Trust Pilot Dream VPS
Punteggio: 8.6
Dream VPS Logo
Dream VPS

Dream VPS

STARTER
$3.75 /Mensile

Recensioni 7


Posizioni dei server


Dream VPS Servers in Hong KongHong Kong Dream VPS Servers in Santa Clara Dream VPS Servers in New Yorkstati Uniti Dream VPS Servers in LondonRegno Unito Dream VPS Servers in AmsterdamOlanda Dream VPS Servers in FrankfurtGermania Dream VPS Servers in IsraelIsraele
Confrontare
Punteggio: 0
Heroku Logo
Heroku

Heroku

Hobby
$7 /Mensile


Posizioni dei server


Heroku Servers in United Statesstati Uniti
Confrontare
Punteggio: 0
Infra Networking Logo
Infra Networking

Infra Networking

ALFA
$4.19 /Mensile


Posizioni dei server


Infra Networking Servers in JakartaIndonesia Infra Networking Servers in Dallasstati Uniti Infra Networking Servers in DublinIrlanda Infra Networking Servers in LondonRegno Unito Infra Networking Servers in Frankfurt am MainGermania Infra Networking Servers in SingaporeSingapore Infra Networking Servers in AmsterdamOlanda Infra Networking Servers in UruguayUruguay
Confrontare

Hosting dei database MongoDB

 

MongoDB

 

Negli ultimi anni, MongoDB è diventato popolare sia in ambito accademico che professionale. L'utilizzo di questo sistema di database consente di archiviare dati non strutturati in modo molto semplice.

 

In genere, questo tipo di database deve trovarsi in un ambiente facilmente accessibile, poiché le applicazioni che utilizzano questo database generalmente devono farlo in posizioni fisicamente distanti. Data questa esigenza, questo articolo presenta un modo per archiviare ed eseguire operazioni di base in MongoDB utilizzando un servizio di web hosting. La trattazione di questo argomento è utile per chi vuole sapere come creare e gestire i database MongoDB nel cloud. Al fine di offrire soluzioni per la gestione di questo tipo di database, l'articolo indica anche strumenti grafici per la sua amministrazione. In tutto l'articolo, l'accento sarà posto sulle tecnologie per lo sviluppo di applicazioni web utilizzando il linguaggio di programmazione Java.

 

Per accedere al database verrà sviluppato un servizio web, che sarà ospitato su un host gratuito. Per testare il servizio, verrà sviluppata un'applicazione console in linguaggio Java. Infine, l'articolo mostra come testare e monitorare il servizio Web e il database MongoDB.

 

Il termine NoSQL significa Non solo SQL, cioè non solo SQL. Inizialmente furono proposti altri significati, ma il più adottato dalla comunità fu questo. I database NoSQL sono emersi per facilitare l'archiviazione e l'elaborazione dei dati in grandi volumi, offrendo una struttura che consente un'elevata scalabilità.

 

Attualmente ci sono circa 150 diversi database NoSQL. MongoDB sta guadagnando nuovi follower grazie alla sua vasta documentazione e alla comunità coinvolta.

 

Il movimento MongoDB è iniziato all'inizio del 2009 e da allora sono state aggiunte più funzionalità e funzionalità a MongoDB, come supporto senza schema, replica facile, API semplice, driver per lingue diverse, strumenti di manipolazione, aggiornamenti di funzioni e molto altro.

 

Il gruppo di database NoSQL è costituito da database orientati all'applicazione che gestiscono grandi volumi di dati, adottano funzionalità di scalabilità, protocollo REST, MapReduce (leggi BOX 1) e altre funzionalità ad alte prestazioni.

 

RIQUADRO 1: MapReduce

 

MapReduce è un modello di programmazione introdotto da Google con l'obiettivo di supportare l'elaborazione parallela su set di dati distribuiti su più computer (cluster). Il funzionamento di questo modello si basa su due caratteristiche: mappare e ridurre. Per eseguire consolidamenti di ricerca i cui dati sono raggruppati, il richiedente invia la sua ricerca a più computer contemporaneamente.

 

In questo momento, viene effettuata la mappatura (mappa) tra il richiedente e il cluster, quindi i dati risultanti dalla ricerca vengono raggruppati (riduci) generando il risultato della ricerca da consegnare al richiedente.

 

L'acronimo REST sta per Representational state transfer. È una tecnica ampiamente utilizzata nei sistemi CRUD (Distributed Data Manipulation) che utilizzano solo chiamate HTTP. Questo tipo di chiamata semplifica la programmazione, astraendo le attività di basso livello dal programmatore, consentendo l'implementazione di diverse routine nei servizi web. Le chiamate effettuate sono fondamentalmente per l'inserimento dei dati (POST), la query dei dati (GET), l'aggiornamento dei dati (PUT) e l'eliminazione dei dati (DELETE).

 

MongoDB

 

La prima cosa a cui pensare quando si inizia con NoSQL è comparativa. Siccome non potevamo non parlare, passiamo al confronto dei principali termini in relazione alle banche relazionali.

In MongoDB, ogni documento può essere completamente distinto da un altro documento nella stessa raccolta, il che non è vero nel modello relazionale. Di solito, i dati vengono scritti in formato BSON (Binary JSON).

 

Per seguire i passaggi presentati nella sezione successiva, non è necessario che MongoDB sia installato sul computer locale.

 

L'installazione sul computer locale è solo allo scopo di eseguire test più rapidi e più semplici. Se il lettore vuole installare MongoDB sul suo computer e manipolarlo, ecco alcuni comandi iniziali che possono essere utili. Per eseguire il servizio (daemon), è necessario considerare il seguente comando: / mongo. Con il servizio in esecuzione, possiamo avviare l'interprete dei comandi: / mongo, i comandi di base per elencare i database sono: mostra DBS o mostra database. Per scegliere un utilizzo del database (se non esiste, verrà creato il database sqlMagazine): utilizzare sqlMagazine è importante essere consapevoli del fatto che le lettere maiuscole e minuscole sono diverse, attenzione a questo dettaglio.

 

Strumenti MongoDB

 

Dopo tanti comandi, abbiamo già una base per andare avanti. Conoscere i comandi è essenziale per sviluppare applicazioni, tuttavia, per l'amministrazione, esistono altri strumenti grafici che sono ottimi alleati. Ad esempio, le Figure 1 e 2 sono state acquisite dal software MongoHub.

 

Esistono altri strumenti per accedere a MongoDB, come RockMongo e MongoVUE. Lo strumento RockMongo necessita di altri servizi (PHP e Apache), oltre all'attivazione del modulo MongoDB nella configurazione PHP. Questo strumento è adottato come standard in OpenShift, quindi è bene averne una conoscenza.

 

Lo strumento MongoVUE è solo per computer con sistemi operativi Microsoft Windows. Offre buone caratteristiche.

 

Per gli utenti del sistema operativo Apple (Mac OS 10.6.x o versioni successive), è disponibile lo strumento MongoHub. Sebbene esista un sito Web specifico per questo strumento.

 

Creazione di un account per ospitare l'applicazione

 

L'obiettivo è rendere disponibile il database sul Web e consentirne l'accesso da un'applicazione che è anche sul Web o da un'applicazione installata su un altro computer. Il servizio scelto per ospitare il database era OpenShift. In questo, l'utente può creare fino a tre applicazioni e in ciascuna di esse è possibile creare diversi servizi, come Java, PHP, Phyton, applicazioni Ruby, tra gli altri.

 

Se desideri creare più applicazioni sullo stesso account o anche assumere altri servizi e risorse di scalabilità, devi creare un account a pagamento. OpenShift offre una piattaforma come servizio, identificata dall'acronimo PaaS. Esaminiamo i passaggi necessari per creare un account.

 

Inizialmente, l'utente deve andare all'indirizzo della porta di OpenShift: e scegliere l'opzione. Apparirà la schermata di registrazione, come mostrato in Figura.

 

mongodb

 

Basta inserire i dati e fare clic su & ldquo; Registrati & rdquo ;. Verrà inviata un'e-mail per confermare la registrazione, è necessario fare clic sul collegamento in questa e-mail per attivare la registrazione ed essere un per creare le applicazioni.

 

Quando si accede al proprio account OpenShift, è possibile creare i servizi desiderati, vengono offerte anche le istruzioni per accedere alle applicazioni tramite riga di comando, utilizzare JBossDeveloper Studio IDE e una moltitudine di altre risorse. Per facilitare questo passo dopo passo, creeremo automaticamente l'applicazione dopo averla sviluppata in locale.

Alcune impostazioni devono essere effettuate nel nostro account OpenShift. Dopo aver effettuato l'accesso all'account, dobbiamo andare su & ldquo; Impostazioni & rdquo; sezione, come mostrato in Figura.

 

mongodb

 

Nella casella di testo & ldquo; Nome di dominio & rdquo; dobbiamo digitare il nome del dominio desiderato, in questo test digitiamo & ldquo; SQL magazine & rdquo ;. Questo nome (il numero massimo di caratteri è 16) è libero di scegliere, tuttavia, è importante perché verrà utilizzato nel nostro progetto Java. Quindi fare clic su & ldquo; Salva & rdquo; opzione.

 

Dopo aver completato questo passaggio, possiamo tornare alle & ldquo; Applicazioni & rdquo; scheda e fai clic su & ldquo; Crea la tua prima applicazione adesso & rdquo; opzione. Apparirà un elenco con vari servizi che possiamo creare. Scegliamo & ldquo; JBoss Application Server 7 & rdquo ;. Quindi viene visualizzata la finestra per la scelta del nome dell'applicazione

 

Anche questo nome è libero di scegliere, tuttavia dovrebbe essere un nome facile da ricordare, poiché ne avremo bisogno subito. Per questo test, digitiamo & ldquo; MongoDB & rdquo ;.

 

Il passaggio successivo consiste nel fare clic su & ldquo; Crea applicazione & rdquo ;. Questo processo può richiedere alcuni secondi o addirittura minuti, attendere il completamento del processo. Ora possiamo tornare alle & ldquo; Applicazioni & rdquo; scheda e fare clic sull'applicazione creata.

 

A questo punto, aggiungeremo MongoDB alla nostra applicazione. Per fare ciò, basta fare clic sull'applicazione, in questo esempio & ldquo; mongodb & rdquo; quindi fare clic su & ldquo; Aggiungi MongoDB 2.4 & rdquo;,. Se apri una finestra con informazioni e istruzioni, il link & ldquo; Continua alla pagina di panoramica dell'applicazione & rdquo; verrà visualizzato, su cui fare clic, sarà quindi possibile fare clic su & ldquo; Aggiungi MongoDB 2.4 & rdquo ;.

 

Quindi fare clic su & ldquo; Aggiungi cartuccia & rdquo ;. Questo processo può richiedere anche alcuni secondi. Apparirà quindi una schermata con informazioni importanti per accedere al database, è importante registrare queste informazioni in quanto verranno utilizzate nei passaggi successivi. Le informazioni sono nome utente, password e nome del database.

 

Al momento abbiamo già un server (JBoss Application Server) a nostra disposizione e un database NoSQL (MongoDB). Ora basta creare un servizio web per accedere a questa banca e un progetto per accedere a questo servizio web.

 

Sviluppo di applicazioni

 

Fondamentalmente avremo due applicazioni e un database. La prima applicazione sarà responsabile delle richieste per il database. Questa applicazione servirà come un esempio molto semplice, solo per testare il funzionamento del servizio web. La seconda applicazione (servizio web) sarà responsabile della ricezione delle richieste dalla prima e dell'accesso al database.

 

Andiamo alla prima applicazione. I suoi prerequisiti sono Eclipse Kepler e due librerie API (Application Program Interface) Jersey (jersey-client e jersey-core). Al fine di facilitare e semplificare il passo dopo passo qui descritto, creeremo un'applicazione Java in Eclipse Kepler.

 

Le immagini per illustrare passo passo sono state ottenute utilizzando il sistema operativo Mac OS 10.9.3, tuttavia il lettore può utilizzare Microsoft Windows o anche una distribuzione Linux.

 

All'interno di Eclipse accedere a: File, Nuovo, Progetto. Nella finestra successiva scegli & ldquo; Java Project & rdquo; e fai clic su & ldquo; Avanti & rdquo ;. Quindi, inserisci un nome per il progetto e scegli l'opzione & ldquo; Fine & rdquo ;.

Ora dobbiamo creare una classe nel progetto. Per fare ciò, fai clic con il pulsante destro del mouse su & ldquo; src & rdquo ;, & ldquo; New & rdquo ;, & ldquo; Class & rdquo ;.

 

Nella schermata successiva, dobbiamo digitare un nome per la classe e selezionare l'opzione & ldquo; Crea il metodo principale & rdquo; & ldquo; public static void main (String [] args) & rdquo ;, e fai clic su & ldquo; Finish & rdquo ;,

Questo progetto Java mira a registrare le informazioni in un database MongoDB che sarà ospitato sul web. Il tipo di hosting utilizzato consente l'accesso esterno al database, ovvero le applicazioni da qualsiasi luogo possono accedere al database server, tuttavia è necessario reindirizzare le porte sulla macchina locale.

 

Poiché questo può diventare una cosa molto complessa da fare quando si tratta di computer fuori dal nostro controllo o anche di computer che devono continuare ad accedere alle porte locali, o anche quando si tratta di dispositivi mobili, il reindirizzamento delle porte non è il modo migliore. In questo modo il nostro progetto Java accederà al database tramite un servizio web.

 

Prima di inserire i codici, aggiungiamo due librerie per lavorare con i servizi web. Le due librerie che utilizzeremo provengono dall'API Jersey 1.18. Per aggiungerli al progetto, dopo il download, è sufficiente copiarli nella cartella del progetto e fare clic con il pulsante destro del mouse sul nome del progetto e scegliere le proprietà.

 

Nella finestra "Proprietà", seleziona l'opzione "Percorso build Java" e poi "Librerie". Quindi fare clic su & ldquo; Aggiungi vaso esterno & rdquo ;.

 

Ora che abbiamo aggiunto l'API Jersey al nostro progetto, possiamo codificare un po '.

 

In questo frammento di codice iniziale, stiamo solo creando un client URL. Nelle prime righe (3 e 4) abbiamo l'importazione per utilizzare i metodi del & ldquo; Jersey & rdquo; biblioteca. Nelle righe 9 e 10 stiamo creando un oggetto per connettersi all'URL del servizio web. Si noti che l'URL del servizio Web è costituito dal nome completo del nostro account OpenShift insieme alla parola rest e post, a indicare che il servizio Web ha una posizione per i metodi, chiamata rest e un metodo chiamato post. Successivamente, creiamo alcune informazioni da inviare al database

 

Lo scopo dello snippet di codice presentato in questo elenco è di assemblare una stringa di caratteri che obbediscono allo standard JSON da inviare al database MongoDB. Infine, il file da inviare al server. Ora andiamo all'ultimo frammento di codice del progetto Java.

 

Questo snippet di codice avrà bisogno di un'altra importazione per il nostro progetto.

 

Invio al cloud

 

Ora possiamo inviare il nostro servizio web a OpenShift. All'interno di Eclipse scegli la prospettiva JBoss e fai clic su OpenShift Application.

 

Verranno richieste le credenziali dell'account (email e password) definite nella registrazione. Basta inserire i dettagli del tuo account e fare clic su "Avanti". La prima volta che ti connetti, ti viene chiesto di creare chiavi SSH.

 

dobbiamo selezionare l'opzione & ldquo; Usa l'applicazione esistente & rdquo ;. Selezionando questa opzione, verrà visualizzata la schermata per la scelta dell'applicazione creata in precedenza. Scegli l'applicazione e fai clic su "Avanti".

 

Nella schermata successiva, ti verrà chiesto se vogliamo creare un progetto da inviare al nostro server o utilizzare un progetto esistente. Useremo un progetto esistente, in questo caso, il nostro servizio web di nuova concezione. Per fare ciò, deseleziona l'opzione & ldquo; Crea nuovo progetto & rdquo ;, fai clic su & ldquo; Esplora & rdquo; e scegli il progetto jboss-as-helloworld-rs.

 

Completa il processo. Ti verrà chiesto di confermare l'utilizzo della chiave SSH, fai clic su & ldquo; Sì & rdquo ;. Di nuovo & ldquo; Sì & rdquo; per confermare l'invio del servizio web. Dopo questo passaggio, possiamo pubblicare il nostro servizio web. Per fare questo, vai su Eclipse e apri la scheda "Server", fai clic per espandere la scheda del server, in questo caso "mongodb at OpenShift". Apparirà il nome del nostro servizio web jboss-as-helloworld-rs, fai clic destro su di esso e scegli l'opzione & ldquo; Full Publication & rdquo; o & ldquo; Pubblica completa & rdquo ;.

 

Controlla se l'applicazione è già stata creata sul server OpenShift. Per fare ciò, vai al browser e accedi al tuo account OpenShift in & ldquo; Applicazioni & rdquo; scheda e fare clic sull'applicazione. Nell'esempio di questo tutorial, & ldquo; mongodb & rdquo ;, e conferma che è già stato costruito.

 

Se impiega troppo tempo (più di tre minuti), potrebbe essere necessario riavviare l'applicazione. Per fare ciò, usa l'icona corrispondente a destra dello schermo.

 

Test finali

 

Ora che abbiamo un server con MongoDB a nostra disposizione, un progetto per inviare dati al server e un servizio web per riunire i due, possiamo iniziare i test.

 

Un alleato importante per controllarne il funzionamento è Rock Mongo. Può essere attivato in OpenShift molto semplicemente, basta fare clic su & ldquo; Aggiungi Rock Mongo 1.1 & rdquo; nel & ldquo; Applicazione s & rdquo; tab.

 

Un'altra caratteristica importante è il "file di coda", che può essere attivato sulla console. Passa alla console Eclipse e fai clic su OpenShift Explorer, espandi tutte le opzioni fino a raggiungere l'applicazione, nel nostro caso & ldquo; mongodb & rdquo ;. Fai clic con il pulsante destro del mouse e scegli il & ldquo; File di coda & rdquo; opzione.