Sdílet prostřednictvím


Google BigQuery

Shrnutí

Položka Popis
Stav vydání Všeobecná dostupnost
Produkty Power BI (sémantické modely)
Power BI (toky dat)
Prostředky infrastruktury (Tok dat Gen2)
Power Apps (toky dat)
Customer Insights (toky dat)
Podporované typy ověřování Účet organizace
Účet služby

Poznámka:

Některé funkce můžou být přítomné v jednom produktu, ale ne jiné kvůli plánům nasazení a možnostem specifickým pro hostitele.

Poznámka:

Od července 2021 společnost Google ukončila podporu přihlašování k účtům Google z integrovaných architektur prohlížeče. Vzhledem k této změně musíte aktualizovat verzi Power BI Desktopu na červen 2021 nebo novější, aby podporovala přihlášení k Googlu.

Požadavky

Abyste se mohli přihlásit k Google BigQuery, potřebujete účet Google nebo účet služby Google.

Podporované funkce

  • Import
  • DirectQuery (sémantické modely Power BI)

Připojení k datům Google BigQuery z Power Query Desktopu

Pokud se chcete připojit k Google BigQuery z Power Query Desktopu, postupujte takto:

  1. V prostředí získat data vyberte Google BigQuery . Možnosti získání dat v Power Query Desktopu se mezi aplikacemi liší. Další informace o tom, jak Power Query Desktop získat data pro vaši aplikaci, najdete v části Kde získat data.

  2. Pokud chcete použít jakékoli pokročilé možnosti, vyberte Upřesnit možnosti. V opačném případě pokračujte výběrem tlačítka OK . Další informace: Připojení pomocí rozšířených možností

    Obrázek znázorňující počáteční dialogové okno s výběrem rozšířených možností

  3. Konektor Google BigQuery podporuje připojení prostřednictvím účtu organizace nebo přihlášení k účtu služby. V tomto příkladu se přihlaste pomocí účtu organizace. Pokračujte výběrem možnosti Přihlásit se .

    Přihlaste se k Google BigQuery.

    Můžete se také přihlásit pomocí účtu služby Google. V takovém případě vyberte Přihlášení k účtu služby a zadejte e-mail účtu služby a obsah souboru s klíčem JSON účtu služby. Pak vyberte Připojit.

  4. Zobrazí se dialogové okno Přihlásit se googlem . Vyberte svůj účet Google a schvalte připojení k Power BI Desktopu.

    Přihlaste se k Googlu.

  5. Po přihlášení pokračujte výběrem možnosti Připojit .

    Připojte se k datům Google BigQuery.

  6. Po úspěšném připojení se zobrazí okno Navigátor a zobrazí data dostupná na serveru. Vyberte data v navigátoru. Potom vyberte transformovat data v Power Query nebo Načíst , aby se data načetla v Power BI Desktopu.

    Obrázek navigátoru Power Query, který načítá data Google BigQuery do desktopové aplikace

Připojení k datům Google BigQuery z Power Query Online

Pokud se chcete připojit k Google BigQuery z Power Query Online, postupujte takto:

  1. V prostředí získat data vyberte možnost Google BigQuery. Různé aplikace mají různé způsoby, jak získat prostředí dat v Power Query Online. Další informace o tom, jak získat data z aplikace do Power Query Online, najdete v části Kde získat data.

    Snímek obrazovky s dialogovým oknem Získat data se zvýrazněným konektorem Google BigQuery

  2. V dialogovém okně Databáze Google BigQuery možná budete muset vytvořit nové připojení nebo vybrat existující připojení. Pokud používáte místní data, vyberte místní bránu dat. Pak vyberte Přihlásit se.

    Obrázek dialogového okna pro přihlášení

  3. Zobrazí se dialogové okno Přihlásit se googlem . Vyberte svůj účet Google a schvalte připojení.

    Poznámka:

    I když se v dialogovém okně pro přihlášení zobrazí zpráva, že po přihlášení budete pokračovat v Power BI Desktopu, budete místo toho odesláni do online aplikace.

    Obrázek dialogového okna přihlášení Google

  4. Pokud chcete použít jakékoli pokročilé možnosti, vyberte Upřesnit možnosti. Další informace: Připojení pomocí rozšířených možností

  5. Po přihlášení pokračujte výběrem možnosti Další .

    Obrázek uživatele, který se úspěšně přihlásil

  6. Po úspěšném připojení se zobrazí okno Navigátor a zobrazí data dostupná na serveru. Vyberte data v navigátoru. Potom výběrem možnosti Další transformujte data v Power Query.

    Obrázek navigátoru Power Query, který načítá data Google BigQuery do online aplikace

Připojení pomocí rozšířených možností

Power Query Desktop i Power Query Online poskytují sadu rozšířených možností, které můžete v případě potřeby přidat do dotazu.

Zobrazení rozšířených možností dostupných v Power Query Desktopu

Následující tabulka uvádí všechny pokročilé možnosti, které můžete nastavit v Power Query Desktopu a Power Query Online.

Upřesnit možnosti Popis
ID fakturačního projektu Projekt, na kterém Bude Power Query spouštět dotazy. Oprávnění a fakturace jsou svázaná s tímto projektem. Pokud není k dispozici žádné ID fakturačního projektu, použije se ve výchozím nastavení první dostupný projekt vrácený rozhraními API Google.
Použití rozhraní API služby Storage Příznak, který umožňuje používat rozhraní API úložiště Google BigQuery. Tato možnost je ve výchozím nastavení true. Tuto možnost můžete nastavit na false, aby nepoužíla rozhraní API úložiště a místo toho používala rozhraní REST API.
Doba trvání časového limitu připojení Standardní nastavení připojení (v sekundách), které určuje, jak dlouho Power Query čeká na dokončení připojení. Tuto hodnotu můžete změnit, pokud se připojení nedokončí před 15 sekundou (výchozí hodnota.)
Doba trvání časového limitu příkazu Jak dlouho Power Query čeká na dokončení dotazu a vrácení výsledků. Výchozí nastavení závisí na výchozím nastavení ovladače. Pokud chcete připojení nechat otevřené déle, můžete zadat další hodnotu v minutách.
ID projektu Projekt, na který chcete spouštět nativní dotazy. Tato možnost je dostupná jenom v Power Query Desktopu.
SQL statement Informace najdete v tématu Import dat z databáze pomocí nativního databázového dotazu. V této verzi funkce nativního databázového dotazu je třeba použít plně kvalifikované názvy tabulek ve formátu Database.Schema.Table, například SELECT * FROM DEMO_DB.PUBLIC.DEMO_TABLE. Tato možnost je dostupná jenom v Power Query Desktopu.

Jakmile vyberete požadované pokročilé možnosti, vyberte v Power Query Desktopu nebo v Power Query Online tlačítko OK a připojte se k datům Google BigQuery.

Omezení a důležité informace

Tato část popisuje všechna omezení nebo aspekty konektoru Google BigQuery.

Připojení k Google BigQuery v Power BI Desktopu

Při používání konektoru Google BigQuery s Power BI je potřeba vzít v úvahu několik omezení a důležitých informací.

Dostupnost konektoru

Konektor Google BigQuery je k dispozici v Power BI Desktopu a v služba Power BI. V služba Power BI se ke konektoru dostanete pomocí připojení Cloud-to-Cloud z Power BI k Google BigQuery.

Chyba Odepření přístupu

Při pokusu o připojení k Google BigQuery z Power BI Desktopu se může zobrazit následující chybová zpráva:

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

V tomto případě možná budete muset zadat ID fakturačního projektu v rozšířené možnosti Fakturační projekt v nastavení připojení Power Query.

Pokud také vytvoříte sestavu v služba Power BI pomocí brány, může se vám tato chyba stále zobrazovat. V takovém případě musíte ručně zahrnout ID fakturačního projektu do kódu M pro připojení pomocí editoru Power Query nebo řádku vzorců Power Query. Příklad:

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

Vnořená pole

Aby bylo možné optimalizovat aspekty výkonu, Google BigQuery dobře funguje s velkými datovými sadami při denormalizaci, zploštění a vnoření.

Konektor Google BigQuery podporuje vnořená pole, která se načítají jako textové sloupce ve formátu JSON.

Podpora vnořených polí Google BigQuery

Uživatelé by měli vybrat Transformovat data a pak pomocí možností analýzy JSON v Editor Power Query extrahovat data.

  1. Na kartě Transformace na pásu karet vyberte kategorii Sloupec textu, vyberte Parsovat a pak JSON.
  2. Extrahujte pole záznamů JSON pomocí možnosti Rozbalit sloupec .

Nastavení účtu služby Google

Další informace o nastavení nebo používání účtů služeb Google najdete v dokumentaci Google k vytváření a správě klíčů účtu služby.

Ověřování prostřednictvím účtu služby Google

Při ověřování prostřednictvím účtu služby Google v Power BI Desktopu existuje konkrétní formát přihlašovacích údajů vyžadovaný konektorem.

  • E-mail účtu služby: Musí být ve formátu e-mailu.
  • Obsah souboru s klíčem JSON účtu služby: Po stažení tohoto klíče JSON se všechny nové řádky musí ze souboru odebrat, aby byl obsah na jednom řádku. Jakmile je soubor JSON v tomto formátu, můžete obsah vložit do tohoto pole.

Při ověřování prostřednictvím účtu služby Google v služba Power BI nebo Power Query Online musí uživatelé používat základní ověřování. Pole Uživatelské jméno se mapuje na pole e-mail účtu služby a pole Heslo se mapuje na pole s obsahem souboru klíče JSON účtu služby. Požadavky na formát pro jednotlivé přihlašovací údaje zůstávají v Power BI Desktopu, služba Power BI a Power Query Online stejné.

Nejde se ověřit pomocí rozhraní API služby Google BigQuery Storage

Konektor Google BigQuery ve výchozím nastavení používá rozhraní API služby Google BigQuery Storage. Tuto funkci řídí pokročilá možnost s názvem UseStorageApi. Pokud používáte podrobná oprávnění, může dojít k problémům s touto funkcí. V tomto scénáři se může zobrazit následující chybová zpráva nebo se z dotazu nepodaří získat žádná data:

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

Tento problém můžete vyřešit tak, že upravíte uživatelská oprávnění pro rozhraní API služby BigQuery Storage správně. Pro správný přístup k datům pomocí rozhraní API BigQueryStorage se vyžadují tato oprávnění rozhraní API úložiště:

  • bigquery.readsessions.create: Vytvoří novou relaci čtení prostřednictvím rozhraní API služby BigQuery Storage.
  • bigquery.readsessions.getData: Čte data z relace čtení prostřednictvím rozhraní API služby BigQuery Storage.
  • bigquery.readsessions.update: Aktualizuje relaci čtení prostřednictvím rozhraní API služby BigQuery Storage.

Tato oprávnění jsou obvykle k dispozici v BigQuery.User roli. Další informace, předdefinované role a oprávnění Google BigQuery

Pokud výše uvedené kroky problém nevyřeší, můžete zakázat rozhraní API služby BigQuery Storage.

V režimu Direct Query nejde použít data typu DateTime

Existuje známý problém, kdy se typ DateTime nepodporuje prostřednictvím direct query. Výběr sloupce s typem DateTime způsobí chybu Neplatný dotaz nebo vizuální chybu.

Omezení dotazování sloupce, který má stejný název jako název tabulky

Při dotazování na sloupec, který má stejný název jako název tabulky, BigQuery interpretuje sloupec jako struct sloupec, který obsahuje všechny sloupce v tabulce místo zadaného sloupce. Například SELECT debug FROM dataset.debug vrátí sloupec struct se všemi sloupci v ladicím tabulce místo zadaného sloupce ladění. Toto chování není intuitivní a zkoumá se oprava. K dispozici jsou tři alternativní řešení:

  • Alternativní řešení 1: Zalomení tabulky zobrazením, které není v konfliktu s názvem sloupce–CREATE VIEW dataset.new_view AS SELECT * FROM dataset.debug
  • Alternativní řešení 2: Přejmenujte sloupec tak, aby nedocházelo ke konfliktům s názvem tabulky–ALTER TABLE dataset.debug RENAME COLUMN debug to new_debug
  • Alternativní řešení 3: Změna dotazu SELECT na použití table.column odkaz na konfliktní sloupec –SELECT debug.debug FROM dataset.debug

Materializovaná zobrazení nejsou v navigátoru Power BI Desktopu podporovaná.

Známým problémem je, že konektor Google BigQuery v současné době nepodporuje materializovaná zobrazení v navigátoru Power BI Desktopu.

  • Alternativní řešení: Využijte nativní příkazy SQL dotazů k načtení materializovaných zobrazení z Google BigQuery.

Chyba HTTP 403: quotaExceeded (překročení kvóty: Uživatel překročil kvótu pro souběžné požadavky project.lists)

  • Kvóta se překročí v rámci využití účtu zákazníka v rámci volání rozhraní API project.lists do Googlu. Když se současně aktualizuje více sestav, může se v různých dotazech nebo sestavách aktivovat chyba. Pokud chcete této chybě zabránit, naplánujte aktualizace sestavy v rozložených intervalech.
  • Aktualizujte dotaz tak, aby zahrnoval ID fakturačního projektu – GoogleBigQuery.Database([BillingProject="Include-Billing-Project-Id-Here"]).
  • Volání, která GoogleBigQuery.Database mají být ve stejném dotazu jako schéma a výběr tabulky, aby nedocházelo k chybě.