Leggere da un database PostgreSQL

Questa pagina descrive come leggere i dati da un database PostgreSQL in un'istanza Cloud Data Fusion.

Prima di iniziare

  • Crea un'istanza Cloud Data Fusion.
  • Consenti al database PostgreSQL di accettare connessioni da Cloud Data Fusion. Per farlo in modo sicuro, ti consigliamo di utilizzare un'istanza Cloud Data Fusion privata.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per connetterti a un database PostgreSQL, chiedi all'amministratore di concederti i seguenti ruoli IAM:

  • Dataproc Worker (roles/dataproc.worker) sul account di servizio Dataproc nel progetto che contiene il cluster
  • Esecutore Cloud Data Fusion (roles/datafusion.runner) sull'account di servizio Dataproc nel progetto che contiene il cluster
  • Per utilizzare Cloud SQL senza Cloud SQL Auth Proxy: Client Cloud SQL (roles/cloudsql.client) sul progetto che contiene l'istanza Cloud SQL

Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Apri l'istanza in Cloud Data Fusion

  1. Nella Google Cloud console, vai alla pagina Cloud Data Fusion.

  2. Per aprire l'istanza in Cloud Data Fusion Studio, fai clic su Istanze e poi su Visualizza istanza.

    Vai a Istanze

Archiviare la password di PostgreSQL come chiave sicura

Inserisci la password PostgreSQL come chiave sicura per la crittografia nell'istanza Cloud Data Fusion. Per ulteriori informazioni sulle chiavi, consulta Cloud KMS.

  1. Nell'interfaccia utente di Cloud Data Fusion, fai clic su Amministratore di sistema > Configurazione.

  2. Fai clic su Effettua chiamate HTTP.

    Configurazione.

  3. Nel menu a discesa, scegli PUT.

  4. Nel campo del percorso, inserisci namespaces/default/securekeys/pg_password.

  5. Nel campo Corpo, inserisci {"data":"POSTGRESQL_PASSWORD"}. Sostituisci POSTGRESQL_PASSWORD con la password di PostgreSQL.

  6. Fai clic su Invia.

    Password.

Il campo Risposta ti informa di eventuali errori.

Connettersi a Cloud SQL per PostgreSQL

  1. Nella UI di Cloud Data Fusion, fai clic sul menu e vai alla pagina Wrangler.

  2. Fai clic su Aggiungi connessione.

  3. Scegli Database come tipo di origine a cui connetterti.

    Aggiungi connessione.

  4. In Google Cloud SQL per PostgreSQL, fai clic su Carica.

    Scegli l'origine.

  5. Carica un file JAR contenente il driver PostgreSQL. Il file JAR deve seguire il formato NAME-VERSION.jar. Se il file JAR non segue questo formato, rinominalo prima di caricarlo.

  6. Fai clic su Avanti.

  7. Inserisci il nome, il nome della classe e la versione del driver nei campi.

  8. Fai clic su Fine.

  9. Nella finestra Aggiungi connessione che si apre, fai clic su Google Cloud SQL per PostgreSQL. Il nome del file JAR dovrebbe essere visualizzato in Google Cloud SQL per PostgreSQL.

    JAR caricato.

  10. Compila i campi di connessione obbligatori. Nel campo Password, seleziona la chiave sicura che hai memorizzato in precedenza. In questo modo, la password viene recuperata utilizzando Cloud KMS.

    Scegli password.

  11. Nel campo Stringa di connessione, inserisci la stringa di connessione nel seguente formato:

    jdbc:postgresql://google/DATABASE_NAME?cloudSqlInstance=INSTANCE_CONNECTION_NAME&socketFactory=com.google.cloud.sql.postgres.SocketFactory&useSSL=false
    

    Sostituisci quanto segue:

    • DATABASE_NAME: il nome del database Cloud SQL come elencato nella scheda Database della pagina dei dettagli dell'istanza.
    • INSTANCE_CONNECTION_NAME: il nome della connessione dell'istanza Cloud SQL visualizzato nella scheda Panoramica della pagina dei dettagli dell'istanza.
    Nome connessione istanza.

    Ad esempio:

    jdbc:postgresql://google/postgres?cloudSqlInstance=dis-demo:us-central1:pgsql-1&socketFactory=com.google.cloud.sql.postgres.SocketFactory&useSSL=false
    

  12. Abilita l'API Cloud SQL Admin.

  13. Fai clic su Prova connessione per assicurarti che la connessione possa essere stabilita con il database.

  14. Fai clic su Aggiungi connessione.

Una volta connesso il database PostgreSQL, puoi applicare trasformazioni ai dati (in Wrangler), creare una pipeline e scrivere l'output in un sink (in Studio).