Migrazione dei dati Amazon Redshift con una rete VPC

Questo documento spiega come eseguire la migrazione dei dati da Amazon Redshift a BigQuery utilizzando un VPC.

Se hai un'istanza Amazon Redshift privata in AWS, puoi eseguire la migrazione dei dati a BigQuery creando una rete Virtual Private Cloud (VPC) e connettendola alla rete VPC di Amazon Redshift. Il processo di migrazione dei dati funziona nel seguente modo:

  1. Crea una rete VPC nel progetto che vuoi utilizzare per il trasferimento. La rete VPC non può essere una rete VPC condiviso.
  2. Configuri una rete privata virtuale (VPN) e connetti la rete VPC del progetto e la rete VPC di Amazon Redshift.
  3. Quando configuri il trasferimento, specifichi la rete VPC del progetto e un intervallo IP riservato.
  4. BigQuery Data Transfer Service crea un progetto tenant e lo collega al progetto che utilizzi per il trasferimento.
  5. BigQuery Data Transfer Service crea una rete VPC con una subnet nel progetto tenant, utilizzando l'intervallo IP riservato che hai specificato.
  6. BigQuery Data Transfer Service crea il peering VPC tra la rete VPC del tuo progetto e la rete VPC del progetto tenant.
  7. La migrazione di BigQuery Data Transfer Service viene eseguita nel progetto tenant. Attiva un'operazione di unload da Amazon Redshift verso un'area temporanea in un bucket Amazon S3. La velocità di scaricamento è determinata dalla configurazione del cluster.
  8. La migrazione di BigQuery Data Transfer Service trasferisce i dati dal bucket Amazon S3 a BigQuery.

Se vuoi trasferire i dati dalla tua istanza Amazon Redshift tramite IP pubblici, puoi eseguire la migrazione dei dati di Amazon Redshift a BigQuery seguendo queste istruzioni.

Prima di iniziare

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery and BigQuery Data Transfer Service APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery and BigQuery Data Transfer Service APIs.

    Enable the APIs

  8. Impostare le autorizzazioni richieste

    Prima di creare un trasferimento Amazon Redshift, segui questi passaggi:

    1. Assicurati che la persona che crea il trasferimento disponga delle seguenti autorizzazioni Identity and Access Management (IAM) richieste in BigQuery:

      • bigquery.transfers.update autorizzazioni per creare il trasferimento
      • Autorizzazioni bigquery.datasets.update sul set di dati di destinazione

      Il ruolo IAM predefinito role/bigquery.admin include le autorizzazioni bigquery.transfers.update e bigquery.datasets.update. Per saperne di più sui ruoli IAM in BigQuery Data Transfer Service, consulta Controllo dell'accesso.

    2. Consulta la documentazione di Amazon S3 per assicurarti di aver configurato le autorizzazioni necessarie per attivare il trasferimento. Come minimo, ai dati di origine Amazon S3 deve essere applicata la policy gestita da AWS AmazonS3ReadOnlyAccess.

    3. Concedi le autorizzazioni IAM appropriate per la creazione e l'eliminazione del peering di rete VPC all'utente che configura il trasferimento. Il servizio utilizza le credenziali utente Google Cloud dell'utente per creare la connessione di peering VPC.

      • Autorizzazioni per creare il peering VPC: compute.networks.addPeering
      • Autorizzazioni per eliminare il peering VPC: compute.networks.removePeering

      I ruoli IAM predefiniti roles/project.owner, roles/project.editor e roles/compute.networkAdmin includono le autorizzazioni compute.networks.addPeering e compute.networks.removePeering per impostazione predefinita.

    Crea un set di dati

    Crea un set di dati BigQuery per archiviare i dati. Non è necessario creare tabelle.

    Concedere l'accesso al cluster Amazon Redshift

    Segui le istruzioni riportate in Configurare le regole in entrata per i client SQL per inserire nella lista consentita gli intervalli IP del tuo cluster Amazon Redshift privato. In un passaggio successivo, definisci l'intervallo IP privato in questa rete VPC quando configuri il trasferimento.

    Concedere l'accesso al bucket Amazon S3

    Devi disporre di un bucket Amazon S3 da utilizzare come area di gestione temporanea per trasferire i dati Amazon Redshift a BigQuery. Per istruzioni dettagliate, consulta la documentazione di Amazon.

    1. Ti consigliamo di creare un utente Amazon IAM dedicato e di concedere a questo utente solo l'accesso in lettura ad Amazon Redshift e l'accesso in lettura e scrittura ad Amazon S3. Per raggiungere questo passaggio, puoi applicare i seguenti criteri:

      Autorizzazioni Amazon per la migrazione di Amazon Redshift

    2. Crea una coppia di chiavi di accesso utente IAM Amazon.

    Configurare il controllo del carico di lavoro con una coda di migrazione separata

    Se vuoi, puoi definire una coda Amazon Redshift a scopo di migrazione per limitare e separare le risorse utilizzate per la migrazione. Puoi configurare questa coda di migrazione con un numero massimo di query simultanee. Puoi quindi associare un determinato gruppo di utenti di migrazione alla coda e utilizzare queste credenziali durante la configurazione della migrazione per trasferire i dati a BigQuery. Il servizio di trasferimento ha accesso solo alla coda di migrazione.

    Raccogliere informazioni sul trasferimento

    Raccogli le informazioni necessarie per configurare la migrazione con BigQuery Data Transfer Service:

    • Recupera il VPC e l'intervallo IP riservato in Amazon Redshift.
    • Segui queste istruzioni per ottenere l'URL JDBC.
    • Recupera il nome utente e la password di un utente con le autorizzazioni appropriate per il tuo database Amazon Redshift.
    • Segui le istruzioni riportate in Concedere l'accesso al bucket Amazon S3 per ottenere una coppia di chiavi di accesso AWS.
    • Recupera l'URI del bucket Amazon S3 che vuoi utilizzare per il trasferimento. Ti consigliamo di configurare un criterio del ciclo di vita per questo bucket per evitare addebiti non necessari. Il tempo di scadenza consigliato è di 24 ore per consentire un tempo sufficiente per trasferire tutti i dati a BigQuery.

    Valutare i dati

    Nell'ambito del trasferimento dei dati, BigQuery Data Transfer Service scrive i dati da Amazon Redshift a Cloud Storage come file CSV. Se questi file contengono il carattere ASCII 0, non possono essere caricati in BigQuery. Ti consigliamo di valutare i tuoi dati per determinare se questo potrebbe essere un problema per te. In questo caso, puoi aggirare il problema esportando i dati in Amazon S3 come file Parquet e poi importandoli utilizzando BigQuery Data Transfer Service. Per ulteriori informazioni, consulta Panoramica dei trasferimenti di Amazon S3.

    Configura la rete VPC e la VPN

    1. Assicurati di disporre delle autorizzazioni per abilitare il peering VPC. Per maggiori informazioni, vedi Impostare le autorizzazioni richieste.

    2. Segui le istruzioni di questa guida per configurare una rete VPC Google Cloud , una VPN tra la rete VPC del tuo progettoGoogle Cloud e la rete VPC Amazon Redshift e attivare il peering VPC.

    3. Configura Amazon Redshift per consentire la connessione alla tua VPN. Per saperne di più, consulta Gruppi di sicurezza del cluster Amazon Redshift.

    4. Nella console Google Cloud , vai alla pagina Reti VPC per verificare che la tua rete VPCGoogle Cloud nel tuo progetto Google Cloud sia connessa ad Amazon Redshift tramite la VPN.

      Vai a Reti VPC

      La pagina della console elenca tutte le tue reti VPC.

    Configura un trasferimento da Amazon Redshift

    Per configurare un trasferimento Amazon Redshift:

    1. Nella console Google Cloud , vai alla pagina BigQuery.

      Vai a BigQuery

    2. Fai clic su Trasferimenti di dati.

    3. Fai clic su Crea trasferimento.

    4. Nella sezione Tipo di origine, seleziona Migrazione: Amazon Redshift dall'elenco Origine.

    5. Nella sezione Nome configurazione di trasferimento, inserisci un nome per il trasferimento, ad esempio My migration, nel campo Nome visualizzato. Il nome visualizzato può essere qualsiasi valore che ti consenta di identificare facilmente il trasferimento se devi modificarlo in un secondo momento.

    6. Nella sezione Impostazioni destinazione, scegli il set di dati che hai creato dall'elenco Set di dati.

    7. Nella sezione Dettagli origine dati, segui questi passaggi:

      1. Per URL connessione JDBC per Amazon Redshift, fornisci l'URL JDBC per accedere al cluster Amazon Redshift.
      2. Per Nome utente del database, inserisci il nome utente del database Amazon Redshift di cui vuoi eseguire la migrazione.
      3. In Password del database, inserisci la password del database.

      4. Per ID chiave di accesso e Chiave di accesso segreta, inserisci la coppia di chiavi di accesso che hai ottenuto da Concedere l'accesso al bucket S3.

      5. In URI Amazon S3, inserisci l'URI del bucket S3 che utilizzerai come area di staging.

      6. Per Schema Amazon Redshift, inserisci lo schema Amazon Redshift che stai migrando.

      7. Per Modelli di nomi di tabelle, specifica un nome o un modello per la corrispondenza dei nomi delle tabelle nello schema. Puoi utilizzare le espressioni regolari per specificare il pattern nel formato: <table1Regex>;<table2Regex>. Il pattern deve seguire la sintassi delle espressioni regolari Java. Ad esempio:

        • lineitem;ordertb corrisponde alle tabelle denominate lineitem e ordertb.
        • .* corrisponde a tutte le tabelle.

        Lascia vuoto questo campo per eseguire la migrazione di tutte le tabelle dallo schema specificato.

      8. Per la VPC e l'intervallo IP riservato, specifica il nome della rete VPC e l'intervallo di indirizzi IP privati da utilizzare nella rete VPC del progetto tenant. Specifica l'intervallo di indirizzi IP come blocco CIDR.

        Campo CIDR di migrazione di Amazon Redshift

        • Il modulo è VPC_network_name:CIDR, ad esempio: my_vpc:10.251.1.0/24.
        • Utilizza intervalli di indirizzi di rete VPC privata standard nella notazione CIDR, a partire da 10.x.x.x.
        • L'intervallo IP deve contenere più di 10 indirizzi IP.
        • L'intervallo IP non deve sovrapporsi ad alcuna subnet nella rete VPC del progetto o nella rete VPC Amazon Redshift.
        • Se hai configurato più trasferimenti per la stessa istanza Amazon Redshift, assicurati di utilizzare lo stesso valore VPC_network_name:CIDR in ognuno, in modo che più trasferimenti possano riutilizzare la stessa infrastruttura di migrazione.
    8. (Facoltativo) Nella sezione Opzioni di notifica, segui questi passaggi:

      1. Fai clic sul pulsante di attivazione/disattivazione per abilitare le notifiche via email. Quando attivi questa opzione, l'amministratore del trasferimento riceve una notifica via email quando l'esecuzione di un trasferimento non riesce.
      2. In Seleziona un argomento Pub/Sub, scegli il nome dell'argomento o fai clic su Crea un argomento. Questa opzione configura l'esecuzione delle notifiche di Pub/Sub in relazione al trasferimento.
    9. Fai clic su Salva.

    10. La console Google Cloud mostra tutti i dettagli della configurazione del trasferimento, incluso un Nome risorsa per questo trasferimento.

    Quote e limiti

    La migrazione di un'istanza privata Amazon Redshift con una rete VPC esegue l'agente di migrazione su un'infrastruttura single-tenant. A causa dei limiti delle risorse di calcolo, sono consentite al massimo 5 esecuzioni di trasferimento simultanee.

    BigQuery ha una quota di caricamento di 15 TB per ogni job di caricamento per ogni tabella. Internamente, Amazon Redshift comprime i dati della tabella, quindi la dimensione della tabella esportata sarà maggiore di quella riportata da Amazon Redshift. Se prevedi di eseguire la migrazione di una tabella più grande di 15 TB, contatta prima l'assistenza clienti Google Cloud.

    L'utilizzo di questo servizio può comportare costi esterni a Google. Per maggiori dettagli, consulta le pagine dei prezzi di Amazon Redshift e Amazon S3.

    A causa del modello di coerenza di Amazon S3, è possibile che alcuni file non vengano inclusi nel trasferimento a BigQuery.

    Passaggi successivi