Google BigQuery

Riepilogo

Articolo Descrizione
Stato di rilascio Disponibilità generale
Prodotti Power BI (modelli semantici)
Power BI (flussi di dati)
Infrastruttura (Dataflow Gen2)
Power Apps (flussi di dati)
Customer Insights (flussi di dati)
Tipi di autenticazione supportati Organizational account
Account di servizio

Nota

Alcune funzionalità possono essere presenti in un prodotto, ma non altre a causa di pianificazioni di distribuzione e funzionalità specifiche dell'host.

Nota

A partire da luglio 2021, Google ha sospeso il supporto per gli accessi agli account Google da framework browser incorporati. A causa di questa modifica, è necessario aggiornare la versione di Power BI Desktop a giugno 2021 o versione successiva per supportare l'accesso a Google.

Prerequisiti

È necessario un account Google o un account del servizio Google per accedere a Google BigQuery.

Capacità supportate

  • Import
  • DirectQuery (modelli semantici di Power BI)

Connessione ai dati di Google BigQuery da Power Query Desktop

Per connettersi a Google BigQuery da Power Query Desktop, seguire questa procedura:

  1. Selezionare Google BigQuery nell'esperienza di recupero dei dati. L'esperienza di recupero dei dati in Power Query Desktop varia a seconda delle app. Per altre informazioni sull'esperienza dati di Power Query Desktop per l'app, vedere Dove ottenere i dati.

  2. Per usare le opzioni avanzate, selezionare Opzioni avanzate. In caso contrario, selezionare OK per continuare. Altre informazioni: Connessione usando le opzioni avanzate

    Immagine che mostra la finestra di dialogo iniziale con la selezione delle opzioni avanzate.

  3. Il connettore Google BigQuery supporta la connessione tramite un account aziendale o un account del servizio. In questo esempio si userà l'account aziendale per accedere. Selezionare Accedi per continuare.

    Accedere a Google BigQuery.

    È anche possibile accedere usando un account del servizio Google. In questo caso, selezionare Account di accesso al servizio e immettere il messaggio di posta elettronica dell'account del servizio e il contenuto del file di chiave JSON dell'account del servizio. Selezionare Connetti.

  4. Viene visualizzata una finestra di dialogo Accedi con Google . Selezionare l'account Google e approvare la connessione a Power BI Desktop.

    Accedere a Google.

  5. Dopo l'accesso, selezionare Connessione per continuare.

    Connessione a Google BigQuery Data.

  6. Dopo la connessione, viene visualizzata una finestra Strumento di navigazione che visualizza i dati disponibili nel server. Selezionare i dati nello strumento di navigazione. Selezionare quindi Trasforma dati per trasformare i dati in Power Query o Carica per caricare i dati in Power BI Desktop.

    Immagine dello strumento di navigazione di Power Query che carica i dati Di Google BigQuery nell'app desktop.

Connessione ai dati di Google BigQuery da Power Query Online

Per connettersi a Google BigQuery da Power Query Online, seguire questa procedura:

  1. Selezionare l'opzione Google BigQuery nell'esperienza di recupero dei dati. Diverse app hanno diversi modi per ottenere l'esperienza dei dati in Power Query Online. Per altre informazioni su come accedere a Power Query Online, vedere Dove ottenere i dati dall'app.

    Screenshot della finestra di dialogo Recupera dati con l'accento sul connettore Google BigQuery.

  2. Nella finestra di dialogo Database BigQuery di Google potrebbe essere necessario creare una nuova connessione o selezionare una connessione esistente. Se si usano dati locali, selezionare un gateway dati locale. Quindi seleziona Accedi.

    Immagine della finestra di dialogo di accesso.

  3. Viene visualizzata una finestra di dialogo Accedi con Google . Selezionare l'account Google e approvare la connessione.

    Nota

    Anche se la finestra di dialogo di accesso indica che si continuerà a usare Power BI Desktop dopo aver eseguito l'accesso, si verrà invece inviati all'app online.

    Immagine della finestra di dialogo di accesso di Google.

  4. Per usare le opzioni avanzate, selezionare Opzioni avanzate. Altre informazioni: Connessione usando le opzioni avanzate

  5. Dopo l'accesso, selezionare Avanti per continuare.

    Immagine dell'utente che ha eseguito l'accesso.

  6. Dopo la connessione, viene visualizzata una finestra Strumento di navigazione che visualizza i dati disponibili nel server. Selezionare i dati nello strumento di navigazione. Selezionare quindi Avanti per trasformare i dati in Power Query.

    Immagine dello strumento di navigazione di Power Query che carica i dati di Google BigQuery nell'app online.

Connessione con opzioni avanzate

Power Query Desktop e Power Query Online offrono un set di opzioni avanzate che è possibile aggiungere alla query, se necessario.

Visualizzazione delle opzioni avanzate disponibili in Power Query Desktop.

La tabella seguente elenca tutte le opzioni avanzate che è possibile impostare in Power Query Desktop e Power Query Online.

Opzione Avanzate Descrizione
ID progetto di fatturazione Progetto in cui Power Query eseguirà query. Le autorizzazioni e la fatturazione sono associate a questo progetto. Se non viene fornito alcun ID progetto di fatturazione, per impostazione predefinita verrà usato il primo progetto disponibile restituito dalle API Google.
Usare Archiviazione API Flag che consente di usare l'API Archiviazione di Google BigQuery. Questa opzione è true per impostazione predefinita. Questa opzione può essere impostata su false per non usare l'API Archiviazione e usare invece le API REST.
durata del timeout Connessione ion Impostazione di connessione standard (in secondi) che controlla per quanto tempo Power Query attende il completamento di una connessione. È possibile modificare questo valore se la connessione non viene completata prima di 15 secondi (valore predefinito).
Durata del timeout del comando Per quanto tempo Power Query attende il completamento e la restituzione dei risultati di una query. Il valore predefinito dipende dal valore predefinito del driver. È possibile immettere un altro valore in minuti per mantenere la connessione aperta più a lungo.
ID progetto Progetto su cui si desidera eseguire query native. Questa opzione è disponibile solo in Power Query Desktop.
SQL statement Per informazioni, vedere Importare dati da un database usando una query di database nativa. In questa versione della funzionalità di query del database nativo è necessario usare nomi di tabella completi nel formato Database.Schema.Table, ad esempio SELECT * FROM DEMO_DB.PUBLIC.DEMO_TABLE. Questa opzione è disponibile solo in Power Query Desktop.

Dopo aver selezionato le opzioni avanzate necessarie, selezionare OK in Power Query Desktop o Avanti in Power Query Online per connettersi ai dati di Google BigQuery.

Limitazioni e considerazioni

Questa sezione descrive eventuali limitazioni o considerazioni del connettore Google BigQuery.

Connessione a Google BigQuery in Power BI Desktop

Esistono alcuni limiti e considerazioni da tenere presenti quando si usa il connettore Google BigQuery con Power BI.

disponibilità Connessione or

Il connettore Google BigQuery è disponibile in Power BI Desktop e nel servizio Power BI. Nel servizio Power BI è possibile accedere al connettore usando la connessione da cloud a cloud da Power BI a Google BigQuery.

Errore "Accesso negato"

Quando si tenta di connettersi a Google BigQuery da Power BI Desktop, è possibile che venga visualizzato il messaggio di errore seguente:

Datasource.Error: ODBC: ERROR [HY000][Microsoft][BigQuery] (100) Error interacting with REST API: Access Denied: Project <project name>: The user <user name> bigquery.jobs.create permissions in project <project name>.

In questo caso, potrebbe essere necessario immettere un ID progetto di fatturazione nell'opzione avanzata Progetto di fatturazione nelle impostazioni di Power Query Connessione ion.

Inoltre, se si crea anche un report in servizio Power BI usando un gateway, è comunque possibile che venga visualizzato questo errore. In questo caso, è necessario includere manualmente l'ID progetto di fatturazione nel codice M per la connessione usando l'editor di Power Query o la barra della formula di Power Query. Ad esempio:

Source = GoogleBigQuery.Database([BillingProject="Include-Billing-Project-Id-Here"])

Campi annidati

Per ottimizzare le considerazioni sulle prestazioni, Google BigQuery funziona bene con set di dati di grandi dimensioni quando denormalizzati, appiattiti e annidati.

Il connettore Google BigQuery supporta i campi annidati, che vengono caricati come colonne di testo in formato JSON.

Supporto dei campi annidati di Google BigQuery.

Gli utenti devono selezionare Trasforma dati e quindi usare le funzionalità di analisi JSON nel editor di Power Query per estrarre i dati.

  1. Nella scheda Trasforma della barra multifunzione, la categoria Colonna di testo selezionareAnalizza e quindi JSON.
  2. Estrarre i campi del record JSON usando l'opzione Espandi colonna .

Configurazione di un account del servizio Google

Per altre informazioni sulla configurazione o sull'uso degli account del servizio Google, vedere Creazione e gestione delle chiavi dell'account del servizio nella documentazione di Google.

Autenticazione tramite un account del servizio Google

Quando si esegue l'autenticazione tramite un account del servizio Google in Power BI Desktop, è disponibile un formato di credenziale specifico richiesto dal connettore.

  • Indirizzo di posta elettronica dell'account del servizio: deve essere in formato di posta elettronica
  • Contenuto del file di chiave JSON dell'account del servizio: una volta scaricata questa chiave JSON, tutte le nuove righe devono essere rimosse dal file in modo che il contenuto si trovi in una sola riga. Quando il file JSON è in tale formato, il contenuto può essere incollato in questo campo.

Quando si esegue l'autenticazione tramite un account del servizio Google in servizio Power BI o Power Query Online, gli utenti devono usare l'autenticazione di base. Il campo Nome utente viene mappato al campo Indirizzo di posta elettronica dell'account del servizio precedente e il campo Password viene mappato al campo contenuto del file di chiave JSON dell'account del servizio precedente. I requisiti di formato per ogni credenziale rimangono invariati sia in Power BI Desktop, servizio Power BI che in Power Query Online.

Impossibile eseguire l'autenticazione con Google BigQuery Archiviazione API

Il connettore Google BigQuery usa Google BigQuery Archiviazione API per impostazione predefinita. Questa funzionalità è controllata dall'opzione avanzata denominata Use Archiviazione Api. Se si usano autorizzazioni granulari, potrebbero verificarsi problemi con questa funzionalità. In questo scenario potrebbe essere visualizzato il messaggio di errore seguente o non è possibile ottenere dati dalla query:

ERROR [HY000] [Microsoft][BigQuery] (131) Unable to authenticate with Google BigQuery Storage API. Check your account permissions

È possibile risolvere questo problema modificando correttamente le autorizzazioni utente per l'API Archiviazione BigQuery. Queste autorizzazioni dell'API di archiviazione sono necessarie per accedere correttamente ai dati con l'API BigQuery Archiviazione:

  • bigquery.readsessions.create: crea una nuova sessione di lettura tramite l'API Archiviazione BigQuery.
  • bigquery.readsessions.getData: legge i dati da una sessione di lettura tramite l'API Archiviazione BigQuery.
  • bigquery.readsessions.update: Aggiornamenti una sessione di lettura tramite l'API Archiviazione BigQuery.

Queste autorizzazioni vengono in genere fornite nel BigQuery.User ruolo. Altre informazioni, Ruoli e autorizzazioni predefiniti di Google BigQuery

Se i passaggi precedenti non risolvono il problema, è possibile disabilitare l'API Archiviazione BigQuery.

Impossibile usare i dati di tipo DateTime in modalità Direct Query

Esiste un problema noto per cui il tipo DateTime non è supportato tramite Direct Query. Se si seleziona una colonna con il tipo DateTime, verrà generato un errore "Query non valida" o un errore visivo.

Limitazioni relative alla colonna di query con lo stesso nome della tabella

Quando si esegue una query su una colonna con lo stesso nome della tabella, BigQuery interpreta la colonna come che struct include tutte le colonne della tabella anziché la colonna specificata. Ad esempio, restituisce SELECT debug FROM dataset.debug un oggetto struct con tutte le colonne della tabella di debug, anziché la colonna di debug specificata. Questo comportamento in genere non è intuitivo e viene esaminata una correzione. Sono disponibili tre soluzioni alternative:

  • Soluzione alternativa 1: Eseguire il wrapping della tabella con una vista che non è in conflitto con il nome della colonna:CREATE VIEW dataset.new_view AS SELECT * FROM dataset.debug
  • Soluzione alternativa 2: Rinominare la colonna per evitare conflitti con il nome della tabella:ALTER TABLE dataset.debug RENAME COLUMN debug to new_debug
  • Soluzione alternativa 3: Modificare la query edizione Standard LECT per usare table.column per fare riferimento alla colonna dei conflitti:SELECT debug.debug FROM dataset.debug