Questo documento descrive come eseguire il deployment della trasformazione dei dati tra MongoDB Atlas e Google Cloud. In questo documento, esegui il deployment di un processo ETL (Extract, Transform, Load) tra i dati da MongoDB Atlas a BigQuery.
Queste istruzioni sono rivolte agli amministratori di dati che vogliono utilizzare BigQuery per eseguire complesse analisi sui dati operativi in MongoDB Atlas. Dovresti avere familiarità con MongoDB Atlas, BigQuery e Dataflow.
Architettura
Il seguente diagramma mostra l'architettura di riferimento utilizzata per il deployment di questa soluzione.
Come mostrato nel diagramma, ci sono tre modelli Dataflow che per gestire il processo di integrazione. Il primo modello, MongoDB to BigQuery, è una pipeline batch che legge i documenti da MongoDB e li scrive in BigQuery. Il secondo modello, da BigQuery a MongoDB, è un modello batch che può essere utilizzato per leggere i dati analizzati BigQuery e scrivile su MongoDB. Il terzo modello, MongoDB to BigQuery (CDC), è una pipeline di streaming che funziona con le modifiche in tempo reale di MongoDB per gestire le modifiche nei dati operativi. Per maggiori dettagli, consulta Trasformazione dei dati tra MongoDB Atlas e Google Cloud.
Obiettivi
I seguenti passaggi di deployment mostrano come utilizzare MongoDB modello BigQuery per eseguire il processo ETL tra i dati da da MongoDB Atlas a BigQuery. Per eseguire il deployment di questo processo ETL, eseguire le seguenti attività:
- Provisiona un cluster MongoDB Atlas in Google Cloud.
- Caricare i dati nel cluster MongoDB.
- Configura l'accesso al cluster.
- Configura una tabella BigQuery su Google Cloud.
- Crea e monitora il job Dataflow che trasferisce i dati di MongoDB in BigQuery.
- Convalida le tabelle di output in BigQuery.
Costi
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
Per generare una stima dei costi basata sull'utilizzo previsto,
utilizza il Calcolatore prezzi.
Una volta completate le attività descritte in questo documento, puoi evitare la fatturazione continua eliminando le risorse che hai creato. Per ulteriori informazioni, consulta la pagina Pulizia.
Prima di iniziare
Completa i seguenti passaggi per configurare un ambiente per l'architettura MongoDB a BigQuery.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataflow APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataflow APIs.
Installa MongoDB Atlas
In questa sezione, utilizzi Cloud Marketplace per installare un'istanza MongoDB Atlas. Queste istruzioni presuppongono che tu non abbia un account MongoDB esistente. Per i dettagli completi sulla configurazione di un l'abbonamento e il collegamento dell'account di fatturazione Google all'account MongoDB vedi Marketplace self-service di Google Cloud nella documentazione di MongoDB.
- Nella console Google Cloud, espandi il menu di navigazione e seleziona Marketplace.
- Nella casella di ricerca di Marketplace, inserisci MongoDB Atlas.
- Nei risultati di ricerca, seleziona MongoDB Atlas (pagamento a consumo).
- Nella pagina MongoDB Atlas (pagamento a consumo), esamina la panoramica dei termini e delle condizioni, quindi fai clic su Registrati con MongoDB.
- Nella pagina dell'abbonamento a MongoDB, seleziona il tuo account di fatturazione, accetta i termini e fai clic su Abbonati.
- Fai clic sul pulsante Registrati con MongoDB e crea un account MongoDB.
- Nella pagina in cui ti viene chiesto di selezionare un'organizzazione, seleziona l'organizzazione MongoDB per da collegare al tuo account di fatturazione Google Cloud.
- Attendi che Google Cloud completi la sincronizzazione della tua organizzazione.
Una volta sincronizzati gli account, viene visualizzata la pagina MongoDB Atlas (pagamento a consumo) nella console Google Cloud verrà aggiornato con il messaggio Gestisci del fornitore.
Crea un cluster MongoDB Atlas
In questa sezione viene creato un cluster MongoDB. Durante il processo di creazione, seleziona le seguenti informazioni:
- Il tipo di cluster. Seleziona il livello del cluster in base ai requisiti della tua infrastruttura.
- La regione preferita per il cluster. Ti consigliamo di selezionare la regione più vicina alla tua posizione fisica.
Per informazioni dettagliate su come creare ed eseguire il deployment di un cluster MongoDB gratuito, consulta Eseguire il deployment di un cluster gratuito nella documentazione di MongoDB.
Per creare e configurare il cluster, segui questi passaggi:
- Nella console Google Cloud, nella pagina MongoDB Atlas (Paga as you go), fai clic su Gestisci sul provider.
Nella pagina di accesso di MongoDB, fai clic su Google e poi sul pulsante Account che hai utilizzato per installare MongoDB Atlas.
In qualità di nuovo utente, la UI di MongoDB si apre automaticamente sul Database Deployment.
Nella UI di Atlas, nella pagina Deployment di database, fai clic su Crea.
Nella pagina Crea un cluster, fai clic su Condiviso.
L'opzione Condiviso fornisce un cluster gratuito che puoi utilizzare per testare questa architettura di riferimento.
Nella pagina Crea un cluster condiviso, dalla sezione Cloud Provider & Regione, segui questi passaggi:
- Seleziona Google Cloud.
- Seleziona la regione più vicina a te geograficamente e con le caratteristiche che ti interessano.
Nella sezione Livello cluster, seleziona l'opzione M0.
I cluster
M0
sono gratuiti e adatti per piccole applicazioni proof-of-concept.In Nome cluster, inserisci un nome per il cluster.
Fai clic su Crea cluster per eseguire il deployment del cluster.
configura il cluster MongoDB
In questa sezione, completa le seguenti procedure:
- Caricamento dei dati di esempio nel cluster.
- Configurazione dell'accesso al cluster.
- Connessione al cluster in corso.
Carica dati di esempio nel cluster MongoDB
Dopo aver creato un cluster MongoDB, devi caricare i dati al suo interno. in un cluster Kubernetes. MongoDB carica una varietà di set di dati di esempio. Puoi utilizzare uno di questi set di dati per testare questo deployment. Tuttavia, ti consigliamo di utilizzare un set di dati simile ai dati effettivi che utilizzerai nel deployment di produzione.
Per informazioni dettagliate su come caricare i dati di esempio, consulta Carica i dati di esempio nella documentazione di MongoDB.
Per caricare i dati di esempio:
- Nell'interfaccia utente di Atlas, nella pagina Deployment del database, individua il cluster appena di cui hai eseguito il deployment.
Fai clic sul pulsante Ellipses (...) e quindi su Load Sample Dataset.
Il caricamento dei dati di esempio richiede circa 5 minuti.
Esamina i set di dati di esempio e prendi nota della raccolta che vuoi utilizzare per testare questo dispiegamento.
Configurare l'accesso al cluster
Per connettere il cluster, devi creare un utente del database e impostare l'indirizzo IP per il cluster:
- L'utente del database è separato dall'utente di MongoDB. L'utente del database deve essere in grado di connettersi a MongoDB da Google Cloud.
- Per questa architettura di riferimento, utilizza il blocco CIDR di
0.0.0.0/0
come indirizzo IP. Questo blocco CIDR consente l'accesso da qualsiasi luogo ed è adatto solo per un deployment di proof-of-concept come questo. Tuttavia, quando implementi una versione di produzione di questa architettura, assicurati di inserire un intervallo di indirizzi IP adatto per la tua applicazione.
Per maggiori dettagli su come configurare un utente del database e l'indirizzo IP per il tuo per il cluster, vedi Configura l'accesso ai cluster con la procedura guidata di avvio rapido nella documentazione di MongoDB.
Per configurare l'accesso al cluster, segui questi passaggi:
- Nella sezione Sicurezza del riquadro di navigazione a sinistra, fai clic su Guida rapida.
- Nella pagina Nome utente e password, procedi nel seguente modo per
crea l'utente del database:
- In Nome utente, inserisci il nome dell'utente del database.
- In Password, inserisci la password per l'utente del database.
- Fai clic su Create User (Crea utente).
Nella pagina Nome utente e password, procedi nel seguente modo per aggiungere un per il tuo cluster:
In Indirizzo IP, inserisci 0.0.0.0/0.
Per il tuo ambiente di produzione, seleziona l'indirizzo IP appropriato per quell'ambiente.
(Facoltativo) In Descrizione, inserisci una descrizione del cluster.
Fai clic su Add Entry (Aggiungi voce).
Fai clic su Fine e chiudi.
Connessione al tuo cluster
Dopo aver configurato l'accesso al cluster, devi connetterti al cluster. Per informazioni dettagliate su come connetterti al cluster, consulta Connettersi al cluster nella documentazione di MongoDB.
Segui questi passaggi per connetterti al tuo cluster:
- Nella UI di Atlas, nella pagina Deployment di database, individua la di cui hai appena eseguito il deployment.
- Seleziona Connetti.
- Nella pagina Connetti, fai clic sull'opzione Bussola.
Individua il campo Copy the connection string (Copia la stringa di connessione) e poi copia. e salvo la stringa di connessione MongoDB. Utilizza questa stringa di connessione durante l'esecuzione dei modelli Dataflow.
La stringa di connessione ha la seguente sintassi:
mongodb+srv://<UserName>:<Password>@<HostName>
La stringa di connessione include automaticamente il nome utente dell'utente del database creato nel passaggio precedente. Tuttavia, ti verrà chiesta la password dell'utente del database quando utilizzi questa stringa per la connessione.
Fai clic su Chiudi.
crea un set di dati in BigQuery
Quando crei un set di dati in BigQuery, devi solo inserire un nome e selezionare una posizione geografica per il set di dati. Tuttavia, esistono campi facoltativi che puoi impostare nel set di dati. Per ulteriori informazioni su questi campi facoltativi, consulta Creare set di dati.
Nella console Google Cloud, vai alla pagina BigQuery.
Nel riquadro Explorer, seleziona il progetto in cui vuoi creare il set di dati.
Espandi l'opzione
e fai clic su Crea set di dati.Nella pagina Crea set di dati:
- Per ID set di dati, inserisci un set di dati univoco nome.
In Tipo di località, scegli un'area geografica località per il set di dati. Dopo aver creato un set di dati, la località non può essere è cambiato.
Se scegli
EU
o una regione dell'UE per la località del set di dati, i tuoi dati dei clienti BigQuery di base si trovano nell'UE. Per una definizione dei dati dei clienti di BigQuery di base, consulta i Termini specifici del servizio.Fai clic su Crea set di dati.
Creare, monitorare e convalidare un job batch Dataflow
In Dataflow, utilizza le seguenti istruzioni per creare un'istanza un job batch che carica i dati di esempio da MongoDB in BigQuery. Dopo aver creato il job batch, ne monitori l'avanzamento nella Interfaccia di monitoraggio di Dataflow. Per informazioni dettagliate sull'utilizzo del dell'interfaccia di monitoraggio, consulta Utilizzare l'interfaccia di monitoraggio di Dataflow.
Nella console Google Cloud, vai alla pagina Dataflow.
Fai clic su Crea job da modello.
Nella pagina Crea job da modello, segui questi passaggi:
- In Nome job, inserisci un nome job univoco, ad esempio mongodb-to-bigquery-batch. Assicurati che nessun altro Il job Dataflow con questo nome è attualmente in esecuzione in questo progetto.
- Per Endpoint regionale, seleziona la stessa posizione del set di dati BigQuery appena creato.
- Per Modello Dataflow, nella sezione Elabora i dati in blocco (batch) list, seleziona Da MongoDB a BigQuery.
Nella sezione Parametri obbligatori, inserisci i seguenti parametri:
- In URI connessione MongoDB, inserisci il tuo Atlas Stringa di connessione MongoDB.
- Per Database Mongo, inserisci il nome del database creato in precedenza.
- Per la raccolta Mongo, inserisci il nome della raccolta di esempio che hai annotato in precedenza.
- Per la tabella di destinazione BigQuery, fai clic su Sfoglia e poi seleziona la tabella BigQuery che hai creato nel passaggio precedente.
Per Opzione utente, inserisci NONE o FLATTEN.
NONE caricherà l'intero documento in formato stringa JSON in in BigQuery. FLATTEN appiattisce il documento a un livello. Se non fornisci una funzione definita dall'utente, l'opzione FLATTEN funziona solo con documenti che hanno uno schema fisso.
Per avviare il job, fai clic su Esegui job.
Per aprire l'interfaccia di monitoraggio di Dataflow, dove puoi controllare l'avanzamento del job batch e verificare che venga completato senza errori:
- Nella console Google Cloud, apri il menu di navigazione nel progetto per questa implementazione.
- In Analytics, fai clic su Dataflow.
Una volta eseguita correttamente la pipeline, segui questi passaggi per convalidare output della tabella:
- In BigQuery, apri il riquadro Explorer.
Espandi il progetto, fai clic sul set di dati, quindi fai doppio clic sul tavolo.
A questo punto dovresti essere in grado di visualizzare i dati di MongoDB nella tabella.
Esegui la pulizia
Per evitare addebiti sui tuoi account MongoDB e Google Cloud, deve mettere in pausa o terminare il cluster MongoDB Atlas ed eliminare progetto Google Cloud che hai creato per questa architettura di riferimento.
Mettere in pausa o terminare il cluster MongoDB Atlas
La procedura seguente fornisce le nozioni di base per mettere in pausa il cluster. Per tutti i dettagli, consulta Mettere in pausa, riprendere o terminare un cluster nella documentazione di MongoDB.
- Nell'interfaccia utente di Atlas, vai alla pagina Deployment di database per il tuo progetto Atlas.
- In corrispondenza del cluster che vuoi mettere in pausa, fai clic su .
- Fai clic su Metti in pausa il cluster.
- Fai clic su Metti in pausa il cluster per confermare la tua scelta.
Elimina il progetto
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Passaggi successivi
- Trova i modelli Google Dataflow su GitHub se vuoi personalizzarli.
- Scopri di più sulle soluzioni MongoDB Atlas e Google Cloud su Potenziamento delle competenze cloud.
- Scopri di più sui prodotti Google Cloud utilizzati in questa architettura di riferimento:
- Per altre architetture di riferimento, diagrammi e best practice, visita il Centro architetture di Google Cloud.
Collaboratori
Autori:
- Saurabh Kumar | Partner Engineer ISV
- Venkatesh Shanbhag | Senior Solutions Architect (MongoDB)
Altri collaboratori:
- Jun Liu | Supportability Tech Lead
- Maridi (Raju) Makaraju | Supportability Tech Lead
- Sergei Lilichenko | Solutions Architect
- Shan Kulandaivel | Group Product Manager