Vizualizace dat Azure Cosmos DB pomocí Power BI
PLATÍ PRO: NoSQL
Tento článek popisuje kroky potřebné k připojení dat Azure Cosmos DB k Power BI Desktopu.
Ke službě Azure Cosmos DB se můžete připojit z Power BI Desktopu pomocí jedné z těchto možností:
Použití zrcadlení v Microsoft Fabric k replikaci dat Azure Cosmos DB do Fabric OneLake. Všechny změny databáze se automaticky synchronizují s Fabric OneLake téměř v reálném čase, aniž by to ovlivnilo výkon zdrojové databáze nebo spotřebovávají jednotky prostředků (RU).
Sestavy Power BI pak můžou přistupovat k datům přímo z OneLake pomocí režimu DirectLake. Díky vylepšeným funkcím Copilotu v Power BI v rámci prostředků infrastruktury můžete využít generování umělé inteligence a získat tak klíčové obchodní přehledy.
Pomocí Azure Synapse Linku můžete vytvářet sestavy Power BI bez dopadu na výkon nebo náklady na transakční úlohy a žádné kanály ETL.
Můžete použít režim DirectQuery nebo importu . Pomocí DirectQuery můžete vytvářet řídicí panely a sestavy pomocí živých dat z účtů Azure Cosmos DB bez importu nebo kopírování dat do Power BI.
Připojte Power BI Desktop k účtu služby Azure Cosmos DB pomocí konektoru Azure Cosmos DB pro Power BI. Tato možnost je k dispozici pouze v režimu importu a bude spotřebovávat ru přidělené pro vaše transakční úlohy.
Poznámka:
Sestavy vytvořené v Power BI Desktopu je možné publikovat do PowerBI.com. Přímou extrakci dat Azure Cosmos DB nelze provést z PowerBI.com.
Požadavky
Než budete postupovat podle pokynů v tomto kurzu Power BI, ujistěte se, že máte přístup k následujícím prostředkům:
Vytvořte účet databáze Azure Cosmos DB a přidejte data do kontejnerů Azure Cosmos DB.
Pokud chcete sdílet sestavy v PowerBI.com, musíte mít účet v PowerBI.com. Další informace o Power BI a Power BI Pro najdete v tématu https://powerbi.microsoft.com/pricing.
Začněte ihned
Vytváření sestav BI pomocí zrcadlení v Microsoft Fabric
Zrcadlení můžete povolit u stávajících kontejnerů Azure Cosmos DB a vytvářet sestavy a řídicí panely BI na těchto datech téměř v reálném čase. Pokyny, jak začít s prostředky infrastruktury a zrcadlení, najdete v kurzu zrcadlení pro službu Azure Cosmos DB.
Vytváření sestav BI pomocí Azure Synapse Linku
Službu Azure Synapse Link můžete povolit ve stávajících kontejnerech Azure Cosmos DB a vytvářet sestavy BI na těchto datech, a to několika kliknutími pomocí portálu Azure Cosmos DB. Power BI se připojí ke službě Azure Cosmos DB pomocí režimu direct query, který vám umožní dotazovat se na živá data služby Azure Cosmos DB, aniž by to mělo vliv na transakční úlohy.
Vytvoření sestavy nebo řídicího panelu Power BI:
Přihlaste se k webu Azure Portal a přejděte k účtu služby Azure Cosmos DB.
V části Integrace otevřete podokno Power BI a vyberte Začínáme.
Poznámka:
V současné době je tato možnost dostupná pouze pro účty API pro NoSQL. Zobrazení T-SQL můžete vytvářet přímo v bezserverových fondech SQL Synapse a vytvářet řídicí panely BI pro Azure Cosmos DB pro MongoDB. Další informace najdete v tématu Použití power BI a bezserverového fondu Synapse SQL k analýze dat Azure Cosmos DB pomocí Synapse .
Na kartě Povolit Azure Synapse Link můžete na svém účtu povolit Synapse Link z části Povolit Azure Synapse Link pro tento účet . Pokud už je synapse Link pro váš účet povolený, tato karta se nezobrazí. Tento krok je předpokladem pro zahájení povolování Synapse Linku ve vašich kontejnerech.
Poznámka:
Povolení služby Azure Synapse Link má vliv na náklady. Další podrobnosti najdete v části s cenami služby Azure Synapse Link.
Dále v části Povolení služby Azure Synapse Link pro kontejnery zvolte požadované kontejnery, které povolí Synapse Link.
Pokud jste na některých kontejnerech už synapse Link povolili, zobrazí se zaškrtnuté políčko vedle názvu kontejneru. Volitelně můžete zrušit jejich výběr na základě dat, která chcete vizualizovat v Power BI.
Pokud synapse Link není povolený, můžete ho povolit ve stávajících kontejnerech.
Pokud u některého z kontejnerů probíhá povolení Synapse Linku, nebudou zahrnuta data z těchto kontejnerů. Pokud jsou kontejnery povolené, měli byste se později vrátit na tuto kartu a importovat data.
V závislosti na množství dat v kontejnerech může chvíli trvat, než synapse Link povolíte. Další informace najdete v článku o povolení Synapse Linku pro existující kontejnery .
Průběh můžete zkontrolovat na portálu, jak je znázorněno na následující obrazovce. Kontejnery jsou povoleny pomocí Synapse Linku, když průběh dosáhne 100 %.
Na kartě Vybrat pracovní prostor zvolte pracovní prostor Azure Synapse Analytics a vyberte Další. Tento krok automaticky vytvoří zobrazení T-SQL ve službě Synapse Analytics pro dříve vybrané kontejnery. Další informace o zobrazeních T-SQL potřebných k připojení služby Azure Cosmos DB k Power BI najdete v článku Příprava zobrazení .
Poznámka:
Vaše proprieties kontejneru Azure Cosmos DB budou reprezentovány jako sloupce v zobrazeních T-SQL, včetně hluboko vnořených dat JSON. Toto je rychlý start pro řídicí panely BI. Tato zobrazení budou dostupná ve vašem pracovním prostoru nebo databázi Synapse; Můžete také použít stejná zobrazení v pracovním prostoru Synapse pro zkoumání dat, datové vědy, datové inženýrství atd. Upozorňujeme, že pokročilé scénáře můžou znamenat složitější zobrazení nebo vyladění těchto zobrazení, aby se zlepšil výkon. Další informace. Přečtěte si osvědčené postupy pro Synapse Link při používání bezserverových fondů SQL Synapse.
Můžete zvolit existující pracovní prostor nebo vytvořit nový. Pokud chcete vybrat existující pracovní prostor, zadejte podrobnosti o předplatném, pracovním prostoru a databázi . Azure Portal použije vaše přihlašovací údaje Microsoft Entra k automatickému připojení k pracovnímu prostoru Synapse a vytvoření zobrazení T-SQL. Ujistěte se, že k tomuto pracovnímu prostoru máte oprávnění správce Synapse.
Pak vyberte Stáhnout .pbids a stáhněte si soubor zdroje dat Power BI. Otevřete stažený soubor. Obsahuje požadované informace o připojení a otevře Power BI Desktop.
Teď se můžete připojit k datům Azure Cosmos DB z Power BI Desktopu. Zobrazí se seznam zobrazení T-SQL odpovídajících datům v každém kontejneru.
Například na následující obrazovce se zobrazují data vozového parku vozidel. Tato data můžete načíst pro další analýzu nebo je před načtením transformovat.
Teď můžete začít vytvářet sestavu pomocí analytických dat služby Azure Cosmos DB. Všechny změny dat se projeví v sestavě, jakmile se data replikují do analytického úložiště, což se obvykle děje během několika minut.
Vytváření sestav BI pomocí konektoru Power BI
Poznámka:
Připojení ke službě Azure Cosmos DB pomocí konektoru Power BI se v současné době podporuje jenom pro účty Azure Cosmos DB for NoSQL a API pro účty Gremlin.
Spusťte Power BI Desktop.
Můžete získat data, zobrazit poslední zdroje nebo otevřít jiné sestavy přímo z úvodní obrazovky. Výběrem symbolu X v pravém horním rohu zavřete obrazovku. Zobrazí se zobrazení sestavy Power BI Desktopu.
Vyberte pás karet Domů a klikněte na Získat data. Mělo by se zobrazit okno Získat data .
Klikněte na Azure, vyberte Azure Cosmos DB (beta verze) a pak klikněte na Připojit.
Na stránce Konektor náhledu klikněte na Pokračovat. Zobrazí se okno Azure Cosmos DB .
Zadejte adresu URL koncového bodu účtu služby Azure Cosmos DB, ze které chcete načíst data, jak je znázorněno níže, a klikněte na tlačítko OK. Pokud chcete použít vlastní účet, můžete adresu URL načíst z pole identifikátoru URI v okně Klíče na webu Azure Portal. Volitelně můžete zadat název databáze, název kolekce nebo pomocí navigátoru vybrat databázi a kolekci a určit, odkud data pocházejí.
Pokud se k tomuto koncovému bodu připojujete poprvé, zobrazí se výzva k zadání klíče účtu. Pro vlastní účet načtěte klíč z pole Primární klíč v okně Klíče jen pro čtení na webu Azure Portal. Zadejte odpovídající klíč a klikněte na připojit.
Při vytváření sestav doporučujeme použít klíč jen pro čtení. Tím zabráníte zbytečnému vystavení primárního klíče potenciálním bezpečnostním rizikům. Klíč jen pro čtení je k dispozici v okně Klíče na webu Azure Portal.
Po úspěšném připojení účtu se zobrazí podokno Navigátor . Navigátor zobrazuje seznam databází v rámci účtu.
Klikněte na databázi, ze které pocházejí data sestavy, a rozbalte ji. Teď vyberte kolekci obsahující data, která se mají načíst.
V podokně Náhled se zobrazí seznam položek záznamu. Dokument je v Power BI reprezentován jako typ záznamu. Podobně je vnořeným blokem JSON uvnitř dokumentu také záznam. Pokud chcete zobrazit dokumenty vlastností jako sloupce, klikněte na šedé tlačítko se dvěma šipkami v opačných směrech, které symbolizují rozšíření záznamu. Nachází se na pravé straně názvu kontejneru ve stejném podokně náhledu.
Zobrazení sestav Power BI Desktopu je místo, kde můžete začít vytvářet sestavy pro vizualizaci dat. Sestavy můžete vytvářet přetažením polí na plátno Sestava .
Data můžete aktualizovat dvěma způsoby: ad hoc a naplánované. Kliknutím na Aktualizovat hned aktualizujte data. Další informace o možnosti plánované aktualizace najdete v dokumentaci k Power BI.
Známé problémy a omezení
U dělených kontejnerů Cosmos DB se dotaz SQL s agregační funkcí předává službě Cosmos DB, pokud dotaz obsahuje také filtr (klauzuli WHERE) pro klíč oddílu. Pokud agregační dotaz neobsahuje filtr pro klíč oddílu, agregace se provede konektorem.
Konektor nepředává agregační funkci, pokud je volána po použití funkce TOP nebo LIMIT. Cosmos DB zpracovává operaci TOP na konci při zpracování dotazu. Například v následujícím dotazu se top použije v poddotazu, zatímco agregační funkce se použije nad danou sadu výsledků:
SELECT COUNT(1) FROM (SELECT TOP 4 * FROM EMP) E
Pokud je v agregační funkci k dispozici funkce DISTINCT, konektor nepředá agregační funkci do Cosmos DB, pokud je v agregační funkci k dispozici klauzule DISTINCT. Pokud je k dispozici v agregační funkci, rozhraní SQL API služby Cosmos DB nepodporuje funkce DISTINCT.
Pro agregační funkci SUMA vrátí Cosmos DB nedefinovanou jako sadu výsledků, pokud některý z argumentů v funkci SUMA je řetězec, logická hodnota nebo null. Pokud však existují hodnoty null, konektor předá dotaz do Cosmos DB takovým způsobem, že požádá zdroj dat o nahrazení hodnoty null nulou jako součást výpočtu SUMA.
Pro agregační funkci AVG vrátí Cosmos DB nedefinovanou jako sadu výsledků, pokud některý z argumentů v argumentu SUMA je řetězec, logická hodnota nebo null. Konektor zveřejňuje vlastnost připojení, která zakáže předání agregační funkce AVG službě Cosmos DB v případě, že je potřeba přepsat toto výchozí chování služby Cosmos DB. Když je zakázaný přístupový seznam AVG, nepředává se do cosmos DB a konektor zpracovává provádění samotné operace agregace AVG. Další informace najdete v části Povolení předávání funkce PRŮMĚR v rozšířených možnostech.
Kontejnery Azure Cosmos DB s velkým klíčem oddílu se v současné době v konektoru nepodporují.
Předání agregace je zakázané pro následující syntaxi kvůli omezením serveru:
Pokud dotaz nefiltruje klíč oddílu nebo když filtr klíče oddílu používá operátor OR s jiným predikátem na nejvyšší úrovni klauzule WHERE.
Pokud dotaz obsahuje jeden nebo více klíčů oddílů, zobrazí se v klauzuli WHERE klauzule IS NOT NULL.
Konektor V2 nepodporuje složité datové typy, jako jsou pole, objekty a hierarchické struktury. Pro tyto scénáře doporučujeme [zrcadlení prostředků infrastruktury pro službu Azure Cosmos DB](/articles/cosmos-db/analytics-and-business-intelligence-overview.md .
Konektor V2 používá vzorkování prvních 1 000 dokumentů k vytvoření odvozeného schématu. Pro scénáře vývoje schématu se nedoporučuje, když se aktualizují jenom část dokumentů. Například nově přidaná vlastnost do jednoho dokumentu v kontejneru s tisíci dokumentů nemusí být zahrnuta do odvozeného schématu. Pro tyto scénáře doporučujeme používat funkci Zrcadlení prostředků infrastruktury pro službu Azure Cosmos DB .
Konektor V2 v současné době nepodporuje hodnoty, které nejsou řetězcové ve vlastnostech objektu.
Předání filtru je zakázané pro následující syntaxi z důvodu omezení serveru:
Pokud dotaz obsahující jeden nebo více agregačních sloupců odkazuje v klauzuli WHERE.
Další kroky
- Další informace o Power BI najdete v tématu Začínáme s Power BI.
- Další informace o službě Azure Cosmos DB najdete na cílové stránce dokumentace ke službě Azure Cosmos DB.