Replica dei dati da SQL Server a BigQuery


Questo tutorial mostra come creare ed eseguire il deployment di un job che replica continuamente i dati modificati da un database Microsoft SQL Server a una tabella BigQuery.

Obiettivi

In questo tutorial imparerai a:

  1. Abilita Change Data Capture (CDC) nel tuo database SQL Server.
  2. Crea ed esegui un job di replica di Cloud Data Fusion.
  3. Visualizza i risultati in BigQuery.

Costi

In questo documento vengono utilizzati i seguenti componenti fatturabili di Google Cloud:

Per generare una stima dei costi in base all'utilizzo previsto, utilizza il Calcolatore prezzi. I nuovi utenti di Google Cloud possono essere idonei a una prova senza costi aggiuntivi.

Durante l'esecuzione della replica, ti vengono addebitati i costi per il cluster Dataproc e i costi di elaborazione per BigQuery. Per ottimizzare questi costi, consigliamo vivamente di utilizzare i prezzi a costo fisso di BigQuery.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Abilita le API Cloud Data Fusion, BigQuery, and Cloud Storage.

    Abilita le API

  5. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  6. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  7. Abilita le API Cloud Data Fusion, BigQuery, and Cloud Storage.

    Abilita le API

  8. Crea un'istanza di 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 abilitarlo in un'istanza esistente, consulta Abilitare la replica.

Per ulteriori informazioni sul networking, consulta Utilizzo di HAProxy con Cloud Data Fusion per esplorare topologie di rete complesse.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per questo tutorial, consulta Controllo dell'accesso con IAM e Concedi l'autorizzazione utente all'account di servizio.

(Facoltativo) Configura un'istanza VM SQL Server

  1. Crea un'istanza SQL Server.

  2. Scarica il database AdventureWorks2017 (OLTP) e carica i dati nell'istanza SQL Server.

Abilita CDC nel database SQL Server

Per la replica, abilita Change Data Capture (CDC) nel database e nella tabella che vuoi replicare.

Crea ed esegui un job di replica di Cloud Data Fusion

Carica il driver JDBC

  1. Scarica il driver JDBC di SQL Server sulla tua macchina locale.

  2. Nell'interfaccia web di Cloud Data Fusion, carica il driver JDBC. Utilizza questi valori per configurare il driver JDBC:

    • Nel campo Nome, inserisci sqlserver.
    • Nel campo Nome corso, inserisci com.microsoft.sqlserver.jdbc.SQLServerDriver.
    • Nel campo Version (Versione), lascia il valore predefinito.

Crea il lavoro

  1. Nell'interfaccia web di Cloud Data Fusion, fai clic su Replica.

  2. Fai clic su Crea un job di replica.

  3. Nella pagina Crea nuovo job di replica, specifica un nome per il job di replica e fai clic su Avanti.

  4. Configura l'origine:

    1. Seleziona Microsoft SQL Server come origine.
    2. In Host, inserisci il nome host del server SQL da cui eseguire la lettura.
    3. In Porta, inserisci la porta da utilizzare per la connessione a SQL Server: 1433.
    4. In Nome plug-in JDBC, seleziona sqlservero il nome specificato durante la configurazione del driver JDBC.
    5. In Nome database, inserisci AdventureWorks2017.
    6. Nella sezione Credenziali, inserisci il nome utente e la password per accedere a SQL Server.
  5. Tocca Avanti.

  6. Configura la destinazione:

    1. Seleziona la destinazione BigQuery.
    2. L'ID progetto e la Chiave account di servizio vengono rilevati automaticamente. Mantieni i valori predefiniti.
    3. (Facoltativo) Nella sezione Avanzate, puoi configurare il nome e la posizione del bucket Cloud Storage, l'intervallo di carico, il prefisso della tabella temporanea e il comportamento quando tabelle o database vengono eliminati.
  7. Tocca Avanti.

  8. Se la connessione viene stabilita, viene visualizzato un elenco di tabelle AdventureWorks2017. Per questo tutorial, seleziona alcune tabelle ed eventi, ad esempio eventi Insert, Update e Delete.

  9. (Facoltativo) Configura le proprietà avanzate. Per questo tutorial, puoi accettare le impostazioni predefinite.

  10. Tocca Avanti.

  11. Nella pagina Esamina valutazione, fai clic su Visualizza mappature in qualsiasi tabella per una valutazione di problemi di schema, funzionalità mancanti o problemi di connettività che potrebbero verificarsi durante la replica. È necessario risolvere i problemi prima di poter procedere. Per questo tutorial, se una delle tabelle presenta problemi, torna al passaggio in cui hai selezionato le tabelle e seleziona una tabella o un evento senza problemi.

    Per ulteriori informazioni sulle conversioni dei tipi di dati dal database di origine alla destinazione BigQuery, consulta Tipi di dati di replica.

  12. Fai clic su Back (Indietro).

  13. Tocca Avanti.

  14. Esamina i dettagli del job di replica di riepilogo, quindi fai clic su Esegui il deployment del job di replica.

Avvia il job

  • Nella pagina dei dettagli del job di replica, fai clic su Avvia.

Il job di replica passa dallo stato Provisioning a In fase di avvio a In esecuzione. In stato in esecuzione, il job di replica carica in BigQuery uno snapshot iniziale dei dati della tabella selezionati (ad esempio la tabella Persone). In questo stato, lo stato della tabella Persone è indicato come Snapshotting. Una volta caricato lo snapshot iniziale in BigQuery, tutte le modifiche apportate alla tabella Persone vengono replicate in BigQuery. Lo stato della tabella è indicato come Replica in corso.

Monitora il job

Puoi avviare e arrestare il job di replica, esaminarne la configurazione e i log e monitorare il job di replica.

Puoi monitorare le attività del job di replica dalla pagina Dettagli job di replica.

  1. Nella pagina Replica, fai clic sul Nome del job di replica.

  2. Fai clic su Monitoraggio.

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 delle tabelle e del database SQL Server corrispondenti.

  1. Apri BigQuery nella console Google Cloud.

  2. Nel riquadro a sinistra, fai clic sul nome del progetto per espandere un elenco di set di dati.

  3. Seleziona il set di dati adventureworks2017 e poi una tabella da visualizzare.

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 su Google Cloud.

Elimina l'istanza VM

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Seleziona la casella di controllo per l'istanza che vuoi eliminare.
  3. Per eliminare l'istanza, fai clic su Altre azioni, quindi su Elimina e segui le istruzioni.

Elimina l'istanza di Cloud Data Fusion

Segui le istruzioni per eliminare l'istanza di Cloud Data Fusion.

Elimina il progetto

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
  3. Nella finestra di dialogo, digita l'ID del progetto e fai clic su Chiudi per eliminare il progetto.

Passaggi successivi