Questa pagina descrive come leggere i dati da un database PostgreSQL in un'istanza di Cloud Data Fusion.
Prima di iniziare
- Crea un'istanza di Cloud Data Fusion.
- Abilita il database PostgreSQL per accettare connessioni da Cloud Data Fusion. Per farlo in modo sicuro, ti consigliamo di utilizzare un'istanza privata di Cloud Data Fusion.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per la connessione a un database PostgreSQL, chiedi all'amministratore di concederti i ruoli IAM seguenti:
-
Worker Dataproc (
roles/dataproc.worker
) sull'account di servizio Dataproc nel progetto che contiene il cluster -
Cloud Data Fusion Runner (
roles/datafusion.runner
) sull'account di servizio Dataproc nel progetto che contiene il cluster -
Per utilizzare Cloud SQL senza il proxy di autenticazione Cloud SQL:
Client Cloud SQL (
roles/cloudsql.client
) nel progetto che contiene l'istanza Cloud SQL
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Apri l'istanza in Cloud Data Fusion
Nella console Google Cloud, vai alla pagina di Cloud Data Fusion.
Per aprire l'istanza in Cloud Data Fusion Studio: Fai clic su Istanze e poi su Visualizza istanza.
Memorizza la password PostgreSQL come chiave sicura
Inserisci la password PostgreSQL come chiave sicura per criptarla nell'istanza di Cloud Data Fusion. Per ulteriori informazioni sulle chiavi, consulta Cloud KMS.
Nell'interfaccia utente di Cloud Data Fusion, fai clic su Amministratore di sistema > Configurazione.
Fai clic su Effettua chiamate HTTP.
Nel menu a discesa, scegli PUT.
Nel campo del percorso, inserisci
namespaces/default/securekeys/pg_password
.Nel campo Corpo, inserisci
{"data":"POSTGRESQL_PASSWORD"}
. SostituisciPOSTGRESQL_PASSWORD
con la tua password PostgreSQL.Fai clic su Invia.
Nel campo Risposta vengono segnalati eventuali errori.
Connettersi a Cloud SQL per PostgreSQL
Nell'interfaccia utente di Cloud Data Fusion, fai clic sul menu menu e vai alla pagina Wrangler.
Fai clic su Aggiungi connessione.
Scegli Database come tipo di origine da connettere.
In Google Cloud SQL per PostgreSQL, fai clic su Carica.
Carica un file JAR contenente il driver PostgreSQL. Il file JAR deve essere nel formato
NAME-VERSION.jar
. Se il file JAR non segue questo formato, rinominalo prima di caricarlo.Tocca Avanti.
Inserisci il nome del conducente, il nome del corso e la versione nei campi.
Fai clic su Fine.
Nella finestra Aggiungi connessione visualizzata, fai clic su Google Cloud SQL per PostgreSQL. Il nome JAR dovrebbe apparire in Google Cloud SQL per PostgreSQL.
Compila i campi di connessione obbligatori. Nel campo Password, seleziona la chiave sicura archiviata in precedenza. Ciò garantisce che la password venga recuperata utilizzando Cloud KMS.
Nel campo Stringa di connessione, inserisci la stringa di connessione come segue:
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 elencato nella scheda Database della pagina dei dettagli dell'istanza.INSTANCE_CONNECTION_NAME
: il nome della connessione dell'istanza Cloud SQL come visualizzato nella scheda Panoramica della pagina dei dettagli dell'istanza.
Ad esempio:
jdbc:postgresql://google/postgres?cloudSqlInstance=dis-demo:us-central1:pgsql-1&socketFactory=com.google.cloud.sql.postgres.SocketFactory&useSSL=false
Abilitare l'API Cloud SQL Admin.
Fai clic su Verifica connessione per assicurarti che la connessione possa essere stabilita con il database.
Fai clic su Aggiungi connessione.
Dopo aver connesso il database PostgreSQL, puoi applicare trasformazioni ai dati (in Wrangler), creare una pipeline e scrivere l'output in un sink (in Studio).