Skip to main content

Google BigQuery

Tipo di connessione

Strumento Alteryx. La versione più recente è disponibile nella community di Alteryx .

Tipo di supporto

Lettura e scrittura

Convalidato su

Client ODBC versione 2.4.6.1015

Dettagli driver

Potrebbe essere necessario l'intervento dell'amministratore in Google Cloud prima di configurare una connessione negli strumenti di Google BigQuery in Alteryx.

Google BigQuery richiede OAuth come metodo di autenticazione. Supportiamo OAuth con il driver ODBC Simba tramite DSN o in Alteryx tramite DCM.

Strumenti Alteryx utilizzati per Connect

Importante

Gli strumenti Google BigQuery sono deprecati. Puoi comunque utilizzare lo strumento Dati di input e lo strumento Dati di output  per connetterti a Google BigQuery.

Google BigQuery Input Tool Icon
Google BigQuery Output Tool Icon

Elaborazione del flusso di lavoro standard

Input Data Tool Icon
Output Data Tool Icon

Elaborazione del flusso di lavoro In-Database

Blue icon with database being plugged in.
Blue icon with a stream-like object flowing into a database.

Nota

Importante

Progetti, set di dati e tabelle con caratteri speciali come i trattini devono essere racchiusi tra virgolette. Per ulteriori informazioni, consulta l'articolo della Knowkledge base sull' errore di Google BigQuery con i trattini nella query SQL .

L'elaborazione del flusso di lavoro In-Database è supportata solo tramite DCM.

Il set di dati Google BigQuery utilizzato per le connessioni di lettura e scrittura InDB deve essere lo stesso.

Configurazione di una connessione Google BigQuery Bulk

L'utilizzo di Google BigQuery Bulk è supportato solo quando si utilizza anche DCM . Per utilizzare la connessione in blocco tramite lo strumento Dati di output:

  1. Assicurati che Data Connection Manager (DCM) sia abilitato.

  2. Seleziona Configura una connessione e quindi Origini dati - Google BigQuery Bulk.

  3. Seleziona Aggiungi un'origine dati .

    1. Inserisci un nome origine dati .

    2. Inserisci un catalogo (progetto) . Questo è l'ID progetto di Google BigQuery che contiene sia il set di dati in cui verrà scritta la tabella che il contenitore Google Cloud Storage utilizzato per lo staging.

    3. Inserisci un set di dati . Questa è la posizione in cui verrà scritta la tabella finale.

    4. Inserisci un nome contenitore . Questa è la posizione di staging in Google Cloud Storage per il caricamento in blocco. Il contenitore deve trovarsi nella stessa posizione del progetto.

    5. Seleziona Salva .

  4. Seleziona + Connetti credenziale . Le stesse credenziali vengono utilizzate per lo staging in Cloud Storage come progetto Google BigQuery.

    1. Seleziona un metodo in Metodo di autenticazione .

    2. Segui le istruzioni per l'utilizzo di OAuth con DCM .

  5. Seleziona Connetti .

  6. Inserisci il nome della tabella e seleziona OK .

OAuth con DCM

Puoi impostare l'autenticazione per Google BigQuery utilizzando OAuth integrato con DCM. In questo modo non è necessario copiare manualmente i token nel driver ODBC.

Prerequisiti

Per impostare OAuth è necessario:

  • Un DSN valido preparato con l'opzione Autenticatore impostata su OAuth ,

  • L'URL autorità OAuth, la porta, l'ID client e il segreto client forniti dall'amministratore.

Configurazione dell'autenticazione

In Designer, trascina lo strumento di input nell'area di disegno.

  1. Seleziona la casella di spunta Utilizza Data Connection Manager (DCM) .

  2. Seleziona Configura una connessione .

  3. Nella finestra Connessioni dati , vai a Origini dati e scegli Google BigQuery ODBC .

  4. Viene visualizzata la finestra Connection Manager . Seleziona + Aggiungi l'origine dei dati .

  5. In Tecnologia scegli Google BigQuery ODBC con Simba .

  6. Immetti il nome origine dati e scegli il DSN Google BigQuery preparato.

  7. Seleziona Salva .

  8. Per collegare le credenziali, seleziona + Connetti credenziale .

  9. Scegli OAuth come Metodo di autenticazione .

  10. Per Applicazione OAuth scegli Crea nuova credenziale e immetti le informazioni necessarie (richiedi l'URL autorità OAuth, la porta, l'ID client e il segreto client all'amministratore).

  11. Scegli Crea nuova credenziale per Token OAuth .

  12. Immetti il nome credenziale e seleziona Crea e collega .

  13. Seleziona Connetti .

  14. Accedi alla finestra del browser esterno di gestione Google.

Nota

Potrebbe essere richiesto di eseguire due volte il processo di autorizzazione OAuth a causa del modo in cui i token vengono gestiti in DCM.

  • Google BigQuery utilizza sempre le virgolette per le tabelle.

  • Le aggiunte avvengono in base al nome del campo. Se il nome o il tipo di dati non corrispondono, Google BigQuery genera un errore.

  • Seleziona Supporta valori null nelle opzioni specifiche del formato (selezionate per impostazione predefinita) per consentire il caricamento dei dati null in Google BigQuery. Se l'opzione non è selezionata, Google BigQuery rifiuterà i valori null.

  • Le colonne aggiuntive nella tabella di destinazione verranno caricate come null se non sono incluse in Alteryx.

  • Il nome di una colonna deve contenere solo lettere (a-z, A-Z), numeri (0-9) o caratteri di sottolineatura (_) e deve iniziare con una lettera o un carattere di sottolineatura. La lunghezza massima del nome della colonna è 300 caratteri Per ulteriori informazioni, consulta la documentazione di Google BigQuery .

Schemi dei connettori di output

I nomi e i tipi di campo inviati allo strumento Output di Google BigQuery devono corrispondere a quelli nella tabella di destinazione di Google BigQuery. Le colonne presenti nella tabella di Google BigQuery, ma non incluse nell'elenco dei campi dei flussi di lavoro, produrranno valori Null per le colonne corrispondenti nei record inseriti. Ciò causa un errore nel caso in cui la colonna di destinazione non sia configurata come NULLABLE (che ammette i valori Null).

Indicatore di avanzamento di input

Nel caso in cui vi siano righe nel buffer di streaming per la tabella selezionata di uno strumento di input senza una query personalizzata, lo strumento di input utilizzerà il numero stimato di righe nel buffer di streaming segnalato da Google durante l'aggiornamento della percentuale dell'indicatore di avanzamento in un flusso di lavoro in esecuzione. Se la stima di Google non è corretta, è possibile che anche il valore segnalato nell'indicatore di avanzamento sia errato.

Nel caso in cui la tabella oggetto di query sia vuota e il relativo buffer di streaming non lo sia, Google può stimare un numero di righe pari a zero nel buffer di streaming. Tuttavia, Google potrebbe comunque restituire le righe dal buffer di streaming. In questo caso, l'aggiornamento della percentuale dell'indicatore di avanzamento non viene visualizzato e apparirà un avviso.

Configurazione di una connessione con gli strumenti Google BigQuery

Contatta il tuo amministratore di Google Cloud per assistenza con le tue credenziali di Google BigQuery.

A partire da Designer versione 22.1, è supportata l'autenticazione OAuth con il driver ODBC Simba.

Configurazione dell'autenticazione da servizio a servizio

Puoi ottenere un file di chiavi JSON dell'account di servizio da Google Cloud Console oppure creare una nuova chiave per un account di servizio esistente. Ulteriori informazioni su Google BigQuery sono disponibili sul sito della documentazione di Google Big Query in Creazione e gestione delle chiavi per l'account di servizio .

Configurazione dell'autenticazione dell'utente finale

Ottieni un ID client e un segreto Oauth dalla pagina delle credenziali di Google Cloud Console. Assicurati che il tipo di client sia impostato su Altro.

Nota

Utilizza l'autenticazione da servizio a servizio al posto dell'autenticazione dell'utente finale quando possibile. La gestione di chiavi distinte per varie applicazioni che eseguono l'autenticazione per lo stesso account di servizio consente la revoca dell'accesso per un'applicazione specifica senza richiedere alle altre applicazioni di aggiornare le proprie credenziali di autenticazione.

Autorizzazioni di accesso

Le autorizzazioni per la lettura e la scrittura dei dati all'interno di un account di servizio del progetto di Google BigQuery devono essere concesse tramite Google Cloud Console . Ulteriori informazioni sulle autorizzazioni sono disponibili sul sito della documentazione di Google Big Query .

Profondità massima dei record annidati e ripetuti

I record annidati e ripetuti sono supportati a una profondità di livello uno. I record annidati e ripetuti in più livelli sottostanti non sono supportati. Ulteriori informazioni sui record annidati e ripetuti sono disponibili sul sito della documentazione di Google BigQuery .

Dati spaziali

Google BigQuery non supporta la scrittura di dati spaziali.

Appiattimento dei record annidati e ripetuti

In ingresso

Quando si estraggono record annidati o ripetuti da una tabella di Google BigQuery, il flusso di lavoro di Alteryx renderà flat tali record in base al seguente schema di denominazione:

Un record annidato nested_attr della colonna di primo livello top_attr creerà una nuova colonna denominata nr_top_attr_nexted_attr.

In uscita

Quando si esegue il push dei record dal flusso di lavoro di Alteryx a una tabella di Google BigQuery esistente, la necessità di incorporare i campi dei record in record annidati e/o ripetuti viene specificata rinominando i campi dei record che confluiscono nel connettore di output in base a queste convenzioni di denominazione.

Un record nested_attr che dovrebbe essere annidato nella colonna di primo livello top_attr deve essere rinominato in nr_top_attr_nested_attr .

Un record nested_attr che dovrebbe essere annidato e ripetuto un numero arbitrario di volte sotto la colonna di primo livello top_attr deve essere rinominato in nrr_top_attr_{repetition_index}_nested_attr . Le ripetizioni che contengono tutti valori NULL nei campi nidificati vengono rimosse prima della chiamata API per inserire nuove righe nella tabella di Google BigQuery. Ciò implica che i record nel flusso di lavoro di Designer possono avere un numero massimo di ripetizioni arbitrario e che i singoli record non devono avere necessariamente lo stesso numero di ripetizioni.

Limitazione AVRO

A causa di una limitazione AVRO, BigQuery Bulk Loader non supporta i tipi di dati BIGNUMERIC e li tratta come FLOAT.