Del via


Google BigQuery

Resumé

Element Beskrivelse
Udgivelsestilstand Generel tilgængelighed
Produkter Power BI (semantiske modeller)
Power BI (dataflow)
Fabric (Dataflow Gen2)
Power Apps (dataflow)
Kundeindsigt (dataflow)
Understøttede godkendelsestyper Organisationskonto
Tjenestekonto

Bemærk

Nogle funktioner kan være til stede i ét produkt, men ikke andre på grund af installationsplaner og værtsspecifikke egenskaber.

Bemærk

Fra og med juli 2021 ophørte Google med at understøtte logon på Google-konti fra integrerede browserrammer. På grund af denne ændring skal du opdatere din Power BI Desktop-version til juni 2021 eller nyere for at understøtte, at du logger på Google.

Forudsætninger

Du skal bruge en Google-konto eller en Google-tjenestekonto for at logge på Google BigQuery.

Understøttede egenskaber

  • Importér
  • DirectQuery (semantiske Power BI-modeller)

Forbind til Google BigQuery-data fra Power Query Desktop

Hvis du vil oprette forbindelse til Google BigQuery fra Power Query Desktop, skal du benytte følgende fremgangsmåde:

  1. Vælg Google BigQuery i hent dataoplevelsen. Oplevelsen med at hente data i Power Query Desktop varierer mellem apps. Du kan få flere oplysninger om, hvordan power-forespørgselsskrivebord henter data til din app, ved at gå til Hvor du kan hente data.

  2. Hvis du vil bruge indstillinger på forhånd, skal du vælge Avancerede indstillinger. Ellers skal du vælge OK for at fortsætte. Flere oplysninger: Forbind ved hjælp af avancerede indstillinger

    Billede, der viser den indledende dialogboks med de avancerede indstillinger valgt.

  3. Google BigQuery-connectoren understøtter oprettelse af forbindelse via en organisationskonto eller en tjenestekontologon. I dette eksempel skal du bruge organisationskontoen til at logge på. Vælg Log på for at fortsætte.

    Log på Google BigQuery.

    Du kan også logge på med en Google-tjenestekonto. I dette tilfælde skal du vælge Tjenestekontologon og angive mailen for din tjenestekonto og indholdet af JSON-nøglefilen for din tjenestekonto. Vælg derefter Forbind.

  4. Dialogboksen Log på med Google vises. Vælg din Google-konto, og godkend oprettelse af forbindelse til Power BI Desktop.

    Log på Google.

  5. Når du er logget på, skal du vælge Forbind for at fortsætte.

    Forbind til Google BigQuery Data.

  6. Når du har oprettet forbindelse, vises vinduet Navigator , og de data, der er tilgængelige på serveren, vises. Vælg dine data i navigatoren. Vælg derefter enten Transformér data for at transformere dataene i Power Query eller Indlæs for at indlæse dataene i Power BI Desktop.

    Billede af Power Query-navigator, der indlæser Google BigQuery-data i skrivebordsappen.

Forbind til Google BigQuery-data fra Power Query Online

Hvis du vil oprette forbindelse til Google BigQuery fra Power Query Online, skal du benytte følgende fremgangsmåde:

  1. Vælg indstillingen Google BigQuery i hent dataoplevelsen. Forskellige apps har forskellige måder at få data på i Power Query Online. Du kan få flere oplysninger om, hvordan du får dataoplevelsen fra din app i Power Query Online, ved at gå til Hvor du kan hente data.

    Skærmbillede af dialogboksen Hent data med fokus på Google BigQuery-connectoren.

  2. I dialogboksen Google BigQuery-database skal du muligvis enten oprette en ny forbindelse eller vælge en eksisterende forbindelse. Hvis du bruger data i det lokale miljø, skal du vælge en datagateway i det lokale miljø. Vælg derefter Log på.

    Billede af dialogboksen Log på.

  3. Dialogboksen Log på med Google vises. Vælg din Google-konto, og godkend oprettelse af forbindelse.

    Bemærk

    Selvom dialogboksen log på siger, at du vil fortsætte til Power BI Desktop, når du er logget på, sendes du i stedet til din onlineapp.

    Billede af dialogboksen Google-logon.

  4. Hvis du vil bruge indstillinger på forhånd, skal du vælge Avancerede indstillinger. Flere oplysninger: Forbind ved hjælp af avancerede indstillinger

  5. Når du er logget på, skal du vælge Næste for at fortsætte.

    Billede af brugeren, der er logget på.

  6. Når du har oprettet forbindelse, vises vinduet Navigator , og de data, der er tilgængelige på serveren, vises. Vælg dine data i navigatoren. Vælg derefter Næste for at transformere dataene i Power Query.

    Billede af Power Query-navigator, der indlæser Google BigQuery-data i onlineappen.

Forbind ved hjælp af avancerede indstillinger

Både Power Query Desktop og Power Query Online indeholder et sæt avancerede indstillinger, som du kan føje til din forespørgsel, hvis det er nødvendigt.

Visning af avancerede indstillinger, der er tilgængelige i Power Query Desktop.

I følgende tabel vises alle de avancerede indstillinger, du kan angive i Power Query Desktop og Power Query Online.

Avanceret indstilling Beskrivelse
Faktureringsprojekt-id Et projekt, som Power Query kører forespørgsler mod. Tilladelser og fakturering er knyttet til dette projekt. Hvis der ikke er angivet et faktureringsprojekt-id, bruges som standard det første tilgængelige projekt, der returneres af Google API'er.
Brug Lager-API Et flag, der gør det muligt at bruge Lager-API'en for Google BigQuery. Denne indstilling er som standard sand. Denne indstilling kan angives til falsk for ikke at bruge lager-API'en og bruge REST API'er i stedet.
varighed af timeout for Forbind ion Den standardforbindelsesindstilling (i sekunder), der styrer, hvor længe Power Query venter på, at en forbindelse fuldføres. Du kan ændre denne værdi, hvis forbindelsen ikke fuldføres før 15 sekunder (standardværdien).
Varighed af kommandotimeout Hvor længe Power Query venter på, at en forespørgsel fuldføres og returnerer resultater. Standarden afhænger af driverens standard. Du kan angive en anden værdi på få minutter for at holde forbindelsen åben længere.
Projekt-id Det projekt, du vil køre oprindelige forespørgsler på. Denne indstilling er kun tilgængelig i Power Query Desktop.
SQL statement Du kan få flere oplysninger ved at gå til Importér data fra en database ved hjælp af oprindelig databaseforespørgsel. I denne version af den oprindelige databaseforespørgselsfunktionalitet skal du bruge fuldt kvalificerede tabelnavne i formatet Database.Schema.Table, f.eks SELECT * FROM DEMO_DB.PUBLIC.DEMO_TABLE. . Denne indstilling er kun tilgængelig i Power Query Desktop.

Når du har valgt de avancerede indstillinger, du har brug for, skal du vælge OK i Power Query Desktop eller Næste i Power Query Online for at oprette forbindelse til dine Google BigQuery-data.

Begrænsninger og overvejelser

I dette afsnit beskrives eventuelle begrænsninger eller overvejelser i forbindelse med Google BigQuery-connectoren.

Forbind til Google BigQuery i Power BI Desktop

Der er et par begrænsninger og overvejelser, du skal være opmærksom på, når du bruger Google BigQuery-connectoren med Power BI.

Forbind eller tilgængelighed

Google BigQuery-connectoren er tilgængelig i Power BI Desktop og i Power BI-tjeneste. I Power BI-tjeneste kan du få adgang til connectoren ved hjælp af Cloud-to-Cloud-forbindelsen fra Power BI til Google BigQuery.

Fejlen "Adgang nægtet"

Når du forsøger at oprette forbindelse til Google BigQuery fra Power BI Desktop, får du muligvis vist følgende fejlmeddelelse:

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>.

I dette tilfælde skal du muligvis angive et faktureringsprojekt-id i indstillingen Avanceret faktureringsprojekt i indstillingerne for Power Query Forbind ion.

Hvis du også opretter en rapport i Power BI-tjeneste ved hjælp af en gateway, får du måske stadig vist denne fejl. I dette tilfælde skal du manuelt medtage faktureringsprojekt-id'et i M-koden for forbindelsen ved hjælp af Power Query-editoren eller Power Query-formellinjen. Eksempler:

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

Indlejrede felter

Google BigQuery klarer sig godt med store datasæt, når de er denormaliseret, fladgjort og indlejret, for at optimere ydeevnen.

Google BigQuery-connectoren understøtter indlejrede felter, der indlæses som tekstkolonner i JSON-format.

Understøttelse af indlejrede felter i Google BigQuery.

Brugerne skal vælge Transformér data og derefter bruge JSON-fortolkningsegenskaberne i Power Query-editor til at udtrække dataene.

  1. Under båndfanen Transformeringer skal du vælge Fortolk og derefter JSON i kategorien Tekstkolonne.
  2. Udtræk JSON-postfelterne ved hjælp af indstillingen Udvid kolonne .

Konfiguration af en Google-tjenestekonto

Du kan få flere oplysninger om, hvordan du konfigurerer eller bruger Google-tjenestekonti, ved at gå til Oprettelse og administration af tjenestekontonøgler i Google-dokumentation.

Godkendelse via en Google-tjenestekonto

Når du godkender via en Google-tjenestekonto i Power BI Desktop, er der et bestemt legitimationsformat, der kræves af connectoren.

  • Mail til tjenestekonto: Skal være i mailformat
  • JSON-nøglefilindhold for tjenestekonto: Når denne JSON-nøgle er hentet, skal alle nye linjer fjernes fra filen, så indholdet er på én linje. Når JSON-filen er i dette format, kan indholdet indsættes i dette felt.

Når du godkender via en Google-tjenestekonto i Power BI-tjeneste eller Power Query Online, skal brugerne bruge "Grundlæggende"-godkendelse. Feltet Brugernavn knyttes til feltet Tjenestekontomail ovenfor, og feltet Adgangskode knyttes til feltet JSON-nøglefilindhold for tjenestekonto ovenfor. Formatkravene for de enkelte legitimationsoplysninger forbliver de samme i både Power BI Desktop, Power BI-tjeneste og Power Query Online.

Det var ikke muligt at godkende med Google BigQuery Storage API

Google BigQuery-connectoren bruger Som standard Google BigQuery Storage API . Denne funktion styres af den avancerede indstilling UseStorageApi. Du kan støde på problemer med denne funktion, hvis du bruger detaljerede tilladelser. I dette scenarie får du muligvis vist følgende fejlmeddelelse, eller du kan ikke hente data fra din forespørgsel:

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

Du kan løse dette problem ved at justere brugertilladelserne for BigQuery Storage-API'en korrekt. Disse lager-API-tilladelser kræves for at få adgang til data korrekt med BigQueryStorage API:

  • bigquery.readsessions.create: Opretter en ny læsesession via BigQuery Storage-API'en.
  • bigquery.readsessions.getData: Læser data fra en læsesession via BigQuery Storage-API'en.
  • bigquery.readsessions.update: Opdateringer en læsesession via BigQuery Storage-API'en.

Disse tilladelser angives typisk i rollen BigQuery.User . Flere oplysninger, Foruddefinerede roller og tilladelser for Google BigQuery

Hvis ovenstående trin ikke løser problemet, kan du deaktivere BigQuery Storage-API'en.

Data af typen DateTime kan ikke bruges i Direct Query-tilstand

Der er et kendt problem, hvor typen DateTime ikke understøttes via Direct Query. Hvis du vælger en kolonne med typen DateTime, medfører det en "Ugyldig forespørgsel"-fejl eller en visuel fejl.

Begrænsninger for forespørgselskolonne, der har samme navn som tabelnavn

Når du forespørger om en kolonne, der har samme navn som tabelnavnet, fortolker BigQuery kolonnen som en struct , der indeholder alle kolonner i tabellen i stedet for den angivne kolonne. Returnerer f.eks SELECT debug FROM dataset.debug . en struct med alle kolonner i fejlfindingstabellen i stedet for den angivne fejlfindingskolonne. Denne funktionsmåde er normalt ikke intuitiv, og en rettelse undersøges. Der er tre tilgængelige løsninger:

  • Løsning 1: Ombryd tabellen med en visning, der ikke er i konflikt med kolonnenavnet –CREATE VIEW dataset.new_view AS SELECT * FROM dataset.debug
  • Løsning 2: Omdøb kolonnen for at undgå konflikter med tabelnavnet –ALTER TABLE dataset.debug RENAME COLUMN debug to new_debug
  • Løsning 3: Skift SELECT-forespørgslen til at bruge table.column til at referere til konfliktkolonnen –SELECT debug.debug FROM dataset.debug

Materialiserede visninger understøttes ikke i Power BI Desktop-navigatoren

Et kendt problem er, at Google BigQuery-connectoren i øjeblikket ikke understøtter materialiserede visninger i Power BI Desktop-navigatoren.

  • Løsning: Udnyt oprindelige SQL-forespørgselssætninger til at hente materialiserede visninger fra Google BigQuery.