Gestire le connessioni
Questo documento descrive come visualizzare, elencare, condividere, modificare, eliminare e risolvere i problemi di una connessione BigQuery.
In qualità di amministratore BigQuery, puoi creare e gestire le connessioni utilizzate per collegarti a servizi e origini dati esterne. Gli analisti BigQuery utilizzano queste connessioni per inviare query contro origini dati esterne senza spostare o copiare i dati in BigQuery. Puoi creare i seguenti tipi di connessioni:
- Connessioni Amazon S3
- Connessioni Apache Spark
- Connessioni Archiviazione blob
- Connessioni alle risorse cloud per connettersi ai dati di Cloud Storage e implementare funzioni remote
- Connessioni Spanner
- Connessioni Cloud SQL
- Connessioni AlloyDB
Prima di iniziare
Assicurati di avere una connessione funzionante. Le connessioni sono specifiche per tipo e dipendono dall'origine dati esterna collegata.
Abilita l'API BigQuery Connection.
Assicurati di poter visualizzare un elenco degli account di servizio nel tuo progetto. BigQuery crea e utilizza un account di servizio per collegarsi all'origine dati esterna. Quando crei una connessione, viene creato per tuo conto un account del servizio Identity and Access Management (IAM) gestito da Google Cloud. Per visualizzare l'account di servizio associato a una determinata connessione, visualizza i dettagli della connessione.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per gestire le connessioni, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Visualizza i dettagli della connessione:
Utente connessione BigQuery (
roles/bigquery.connectionUser
) nel tuo set di dati -
Elenca tutte le connessioni:
Utente connessione BigQuery (
roles/bigquery.connectionUser
) nel tuo set di dati -
Condividi una connessione:
Amministratore connessione BigQuery (
roles/bigquery.connectionAdmin
) sulla tua connessione -
Modifica una connessione:
Amministratore connessione BigQuery (
roles/bigquery.connectionAdmin
) nella connessione -
Elimina una connessione:
Amministratore connessione BigQuery (
roles/bigquery.connectionAdmin
) nella connessione
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per eseguire le attività descritte in questo documento. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
- Visualizza i dettagli della connessione:
bigquery.connections.get
- Elenca tutte le connessioni:
bigquery.connections.list
- Modificare ed eliminare una connessione:
bigquery.connections.update
- Condividere una connessione:
bigquery.connections.setIamPolicy
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Elenca tutte le connessioni
Seleziona una delle seguenti opzioni:
Console
Vai alla pagina BigQuery.
Le connessioni sono elencate nel progetto, in un gruppo denominato Connessioni esterne.
Nel riquadro Explorer, fai clic sul nome del progetto > Collegamenti esterni per visualizzare un elenco di tutte le connessioni.
bq
Inserisci il comando bq ls
e specifica il flag --connection
. Se vuoi,
specifica i flag --project_id
e --location
per identificare il progetto
e la posizione delle connessioni da elencare.
bq ls --connection --project_id=PROJECT_ID --location=REGION
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto Google CloudREGION
: la regione di connessione
API
Utilizza il metodo projects.locations.connections.list
nella sezione di riferimento dell'API REST.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo di BigQuery con le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API BigQuery Java.
Per autenticarti in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Visualizzazione dei dettagli della connessione
Dopo aver creato una connessione, puoi ottenere informazioni sulla configurazione della connessione. La configurazione include i valori forniti al momento della creazione del trasferimento.
Seleziona una delle seguenti opzioni:
Console
Vai alla pagina BigQuery.
Le connessioni sono elencate nel progetto, in un gruppo denominato Connessioni esterne.
Nel riquadro Explorer, fai clic sul nome del progetto > Connessioni esterne > Connessione.
bq
Inserisci il comando bq show
e specifica il flag --connection
. Se vuoi,
qualifica l'ID connessione con l'ID progetto e la regione della connessione.
bq show --connection PROJECT_ID.REGION.CONNECTION_ID
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto Google CloudREGION
: la regione di connessioneCONNECTION_I
: l'ID connessione
API
Utilizza il
metodo projects.locations.connections.get
nella sezione di riferimento dell'API REST.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo di BigQuery con le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API BigQuery Java.
Per autenticarti in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Condividere una connessione con gli utenti
Puoi concedere i seguenti ruoli per consentire agli utenti di eseguire query sui dati e gestire le connessioni:
roles/bigquery.connectionUser
: consente agli utenti di utilizzare le connessioni per collegarsi a origini dati esterne ed eseguire query su di esse.roles/bigquery.connectionAdmin
: consente agli utenti di gestire le connessioni.
Per ulteriori informazioni sui ruoli e sulle autorizzazioni IAM in BigQuery, consulta Ruoli e autorizzazioni predefiniti.
Seleziona una delle seguenti opzioni:
Console
Vai alla pagina BigQuery.
Le connessioni sono elencate nel progetto, in un gruppo denominato Connessioni esterne.
Nel riquadro Explorer, fai clic sul nome del progetto > Connessioni esterne > Connessione.
Nel riquadro Dettagli, fai clic su Condividi per condividere una connessione. Quindi:
Nella finestra di dialogo Autorizzazioni di connessione, condividi la connessione con altre entità aggiungendole o modificandole.
Fai clic su Salva.
bq
Non puoi condividere una connessione con lo strumento a riga di comando bq. Per condividere una connessione, utilizza la console Google Cloud o il metodo dell'API BigQuery Connections.
API
Utilizza il
metodo projects.locations.connections.setIAM
nella sezione di riferimento dell'API REST BigQuery Connections e
fornisci un'istanza della risorsa policy
.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo di BigQuery con le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API BigQuery Java.
Per autenticarti in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Modificare una connessione
Una connessione utilizza le credenziali dell'utente che l'ha creata. Se devi cambiare l'utente associato a una connessione, puoi aggiornare le sue credenziali. Questa operazione è utile se l'utente che ha creato la connessione non fa più parte della tua organizzazione.
Non puoi modificare i seguenti elementi di una connessione:
- Tipo di connessione
- ID connessione
- Località
Seleziona una delle seguenti opzioni:
Console
Vai alla pagina BigQuery.
Le connessioni sono elencate nel progetto, in un gruppo denominato Connessioni esterne.
Nel riquadro Explorer, fai clic sul nome del progetto > Connessioni esterne > Connessione.
Nel riquadro Dettagli, per modificare i dettagli, fai clic su
Modifica dettagli. Quindi:Nella finestra di dialogo Modifica connessione, modifica i dettagli della connessione, incluse le credenziali utente.
Fai clic su Aggiorna connessione.
bq
Inserisci il comando bq update
e specifica il flag di connessione:
--connection
. connection_id
completo è obbligatorio.
bq update --connection --connection_type='CLOUD_SQL' --properties='{"instanceId" : "INSTANCE", "database" : "DATABASE", "type" : "MYSQL" }' --connection_credential='{"username":"USERNAME", "password":"PASSWORD"}' PROJECT.REGION.CONNECTION_ID
Sostituisci quanto segue:
INSTANCE
: l'istanza Cloud SQLDATABASE
: il nome del databaseUSERNAME
: il nome utente del database Cloud SQLPASSWORD
: la password del database Cloud SQLPROJECT
: l'ID progetto Google CloudREGION
: la regione di connessioneCONNECTION_ID
: l'ID connessione
Ad esempio, il seguente comando aggiorna la connessione in un progetto con l'ID federation-test
e l'ID connessione test-mysql
.
bq update --connection --connection_type='CLOUD_SQL' --properties='{"instanceId" : "federation-test:us-central1:new-mysql", "database" : "imdb2", "type" : "MYSQL" }' --connection_credential='{"username":"my_username", "password":"my_password"}' federation-test.us.test-mysql
API
Consulta il
metodo projects.locations.connections.patch
nella sezione di riferimento dell'API REST e fornisci un'istanza di connection
.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo di BigQuery con le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API BigQuery Java.
Per autenticarti in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Eliminare una connessione
Seleziona una delle seguenti opzioni:
Console
Vai alla pagina BigQuery.
Le connessioni sono elencate nel progetto, in un gruppo denominato Connessioni esterne.
Nel riquadro Explorer, fai clic sul nome del progetto > Connessioni esterne > Connessione.
Nel riquadro Dettagli, fai clic su
Elimina per eliminare il collegamento.Nella finestra di dialogo Eliminare il collegamento?, inserisci
delete
per confermare l'eliminazione.Fai clic su Elimina.
bq
Inserisci il comando bq rm
e specifica il flag di connessione:
--connection
. connection_id
completo è obbligatorio.
bq rm --connection PROJECT_ID.REGION.CONNECTION_ID
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto Google CloudREGION
: la regione di connessioneCONNECTION_ID
: l'ID connessione
API
Consulta il
metodo projects.locations.connections.delete
nella sezione del riferimento all'API REST.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione Java riportate nella guida rapida all'utilizzo di BigQuery con le librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API BigQuery Java.
Per autenticarti in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Passaggi successivi
- Scopri come utilizzare le funzioni del telecomando.
- Scopri come utilizzare le stored procedure per Apache Spark.