Questo tutorial mostra come creare ed eseguire il deployment di un job che replica continuamente i dati modificati da un database MySQL a una tabella BigQuery.
Obiettivi
In questo tutorial:
- Esegui il deployment del database MySQL su Compute Engine.
- Configura il database MySQL per abilitare la replica.
- Crea ed esegui un job di replica Cloud Data Fusion.
- Visualizza i risultati in BigQuery.
Costi
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
Per generare una stima dei costi in base all'utilizzo previsto,
utilizza il calcolatore prezzi.
Quando viene eseguita la replica, ti viene addebitato il costo del cluster Dataproc e vengono addebitati i costi di elaborazione per BigQuery. Per ottimizzare questi costi, ti consigliamo vivamente di utilizzare i prezzi a costo fisso di BigQuery.
Prima di iniziare
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Cloud Data Fusion, BigQuery, and Cloud Storage APIs.
- Crea un'istanza Cloud Data Fusion pubblica nella versione 6.3.0 o successive. Se
crei un'istanza
privata, configura il peering di rete VPC.
- Quando crei l'istanza, abilita la replica facendo clic su Aggiungi acceleratori e selezionando la casella di controllo Replica.
- Per abilitarla in un'istanza esistente, vedi Abilitare la replica.
Scarica un'immagine Docker del server MySQL.
Carica l'immagine Docker in Artifact Registry.
Esegui il deployment dell'immagine Docker su una nuova istanza VM.
Nella pagina Dischi di Compute Engine, modifica le dimensioni del disco in
500 GB
e riavvia la VM.Crea un firewall per l'istanza VM.
Installa il database di esempio Sakila.
Scarica il driver MySQL JDBC (versione 8 o successive) sulla tua macchina locale.
Nell'interfaccia web di Cloud Data Fusion, carica il driver JDBC.
Utilizza questi valori per configurare il driver JDBC:
- Nel campo Nome, inserisci
mysql
. - Nel campo Versione, lascia il valore predefinito.
- Nel campo Nome classe, inserisci
com.mysql.jdbc.Driver
.
- Nel campo Nome, inserisci
Nell'interfaccia web di Cloud Data Fusion, fai clic su Replicazione.
Fai clic su
Crea un job di replica.Nella pagina Crea nuovo job di replica, specifica un Nome per il job di replica e fai clic su Avanti.
Configura l'origine:
- Seleziona MySQL come origine.
- In Host, inserisci il nome host del server MySQL da cui leggere.
- Per Porta, inserisci la porta da utilizzare per connetterti al server MySQL:
3306
. - Per JDBC Plugin Name (Nome plug-in JDBC), seleziona
mysql
o il nome che hai specificato quando hai configurato il driver JDBC. - In Nome database, inserisci
sakila
. - Nella sezione Credenziali, inserisci il tuo nome utente e la password per accedere al server MySQL.
Fai clic su Avanti.
Configura il target:
- Seleziona la destinazione BigQuery.
- L'ID progetto e la chiave dell'account di servizio vengono rilevati automaticamente. Mantieni i valori predefiniti.
- (Facoltativo) Nella sezione Avanzate, configura il nome, la posizione, l'intervallo di caricamento, il prefisso della tabella di staging e il comportamento quando vengono eliminati tabelle o database.
Fai clic su Avanti.
Se la connessione viene stabilita, viene visualizzato un elenco di tabelle del database di esempio Sakila. Per questo tutorial, seleziona alcune tabelle ed eventi da replicare, come gli eventi Inserisci, Aggiorna ed Elimina.
(Facoltativo) Configura le proprietà avanzate. Per questo tutorial, puoi utilizzare le impostazioni predefinite.
Fai clic su Avanti.
Nella pagina Esamina valutazione, fai clic su Visualizza mappature in una delle tabelle per una valutazione di problemi dello schema, funzionalità mancanti o problemi di connettività che potrebbero verificarsi durante la replica. In caso di problemi, devono essere risolti prima di poter procedere. Per questo tutorial, se si verificano problemi con una delle tabelle, torna al passaggio in cui hai selezionato le tabelle e scegli tabelle o eventi (inserimenti, aggiornamenti o eliminazioni) senza problemi.
Per ulteriori informazioni sulle conversioni dei tipi di dati dal database di origine alla destinazione BigQuery, consulta la sezione Tipi di dati di replica.
Fai clic su Avanti.
Esamina i dettagli del job di replica del riepilogo e poi fai clic su Deploy replication job.
- Nella pagina Dettagli job di replica, fai clic su Avvia.
Nella pagina Replicazione, fai clic sul nome del job di replicazione.
Fai clic su Monitoraggio.
Nella console Google Cloud , vai alla pagina BigQuery.
Nel riquadro a sinistra, seleziona il nome del progetto per espandere un elenco di set di dati.
Per visualizzare i risultati, seleziona il set di dati
sakila
e una tabella.- 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.
- Scopri di più sulla replica in Cloud Data Fusion.
- Consulta il riferimento API di replica.
- Segui il tutorial per replicare i dati da SQL Server a BigQuery.
- Segui il tutorial Replicare i dati da Oracle a BigQuery.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per questo tutorial, consulta Controllo dell'accesso con IAM e Concedere l'autorizzazione utente service account.
Installa MySQL in Compute Engine
Abilita la replica nel database MySQL
Per abilitare la replica, configura Change Data Capture (CDC) in MySQL.
Crea ed esegui un job di replica Cloud Data Fusion
Caricare il driver JDBC
Crea il lavoro
Avviare il job
Il job di replica passa dallo stato In fase di provisioning a In fase di avvio a In esecuzione. Nello stato di esecuzione, il job di replica carica uno snapshot iniziale dei dati della tabella selezionata in BigQuery. In questo stato, lo stato della tabella è elencato come Snapshotting. Dopo il caricamento dello snapshot iniziale in BigQuery, tutte le modifiche apportate alla tabella vengono replicate in BigQuery e lo stato della tabella viene visualizzato come Replica in corso.
Monitorare il job
Puoi avviare e interrompere il job di replica, rivedere la sua configurazione e i log e monitorare il job di replica.
Puoi monitorare le attività del job di replica dalla pagina Dettagli job di replica.
Visualizza i risultati in BigQuery
Il job di replica crea un set di dati e una tabella replicati in BigQuery, con nomi ereditati dai nomi del database e della tabella MySQL corrispondenti.
Per ulteriori informazioni, consulta la documentazione di BigQuery.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.
Al termine del tutorial, elimina le risorse che hai creato suGoogle Cloud in modo che non occupino quota e non ti vengano addebitate in futuro. Le seguenti sezioni descrivono come eliminare o disattivare queste risorse.
Elimina l'istanza Cloud Data Fusion.
Segui le istruzioni per eliminare l'istanza Cloud Data Fusion.