Ako získať dáta v Power BI (Časť 2)
Získavanie dát v Power BI je komplexnou témou, ktorá nielen popisuje metódy jednotlivých prístupov, ale obsahuje v sebe aj súvisiace Power BI funkcionality a komponenty.
Získavanie dát v Power BI je komplexnou témou, ktorá nielen popisuje metódy jednotlivých prístupov, ale obsahuje v sebe aj súvisiace Power BI funkcionality a komponenty. Tie ovplyvňujú naše rozhodnutie o najvhodnejšom spôsobe získavania dát. V tomto článku predstavíme Power BI Dataflow, Plánované obnovenie dát (Data refresh), Query Folding a Profilovanie dát (Data profiling).
V článku Ako získať dáta v Power BI (Časť 1) sme sa zamerali na spôsoby prístupu k dátovým zdrojom, na ich výhody a obmedzenia. Popísali sme si rozdiel medzi Importovaním dát, DirectQuery a Dynamickým pripojením. Ďalej sme sa zamerali na Kompozitný model a režimy úložísk pre tabuľky a datasety. Aby sme si však mohli vybrať najefektívnejší spôsob prístupu k dátam, musíme si popísať niektoré Power BI komponenty, ktoré pri tomto rozhodovaní zohrávajú úlohu. Pozrieme sa tak na Power BI Dataflow, ako na jeden z možných zdrojov dát. Popíšeme si plánovanú obnovu dát a jej špecifikácie pre jednotlivé prístupy. Zameriame sa na Query folding a jeho prínosy pre výkonnosť modelov a na profilovanie dát , ako spôsob kontroly kvality dát vstupujúcich do transformácií v Power BI.
Power BI Dataflow
Power BI Dataflow je kolekciou tabuliek, ktoré sú vytvorené a manažované v pracovnom priestore (workspace) v Power BI Službe. Z Power BI Desktopu sme sa tak schopní priamo napojiť na Power BI Dataflow, ako na akýkoľvek iný zdroj.
Umiestnenie Dataflow v rámci Power BI štruktúry
Výhodou využívania dataflow v prostredí Power BI Služby je vytvorenie transformácií na dátach, ktoré môžu byť využité vo viacerých datasetoch opakovane a pripojené datasety tak zdieľajú dáta aj logiku.
Pre viac informácii o zdieľanej architektúre a rozdieloch medzi dataflow a dataset, sme pre vás pripravili článok Power BI: Dataflows versus datasety a sdílená architektura.
Dataflow môžu byť v Power BI Službe vytvorené z viacerých zdrojov:
- definovaním novej tabuľky a pripojením sa na dátové zdroje
- linkovaním tabuliek z jedného dataflow pre využitie rovnakej tabuľky v iných dataflow (dostupné len pre Power BI Premium)
- cez počítané tabuľky vytvorené z iného dataflow (dostupné len pre Power BI Premium)
- importovaním dataflow
- pripojením priečinku Common Data Model z konta Azure Data Lake Storage Gen2 k novému dataflow (V súčasnosti je funkcia v Preview)
Úvodná obrazovka v Power BI Službe pre vytvorenie nového Dataflow
Common Data Model je zdieľaný model uložený v Azure Data Lake a prístupný pre viaceré Microsoft technológie, vrátane Power BI. V podstate sa jedná o centrálne miesto, kde sú uložené zdieľané dáta medzi integrovanými aplikáciami a zdrojmi. Common Data Model môže slúžiť pre vytvorenie Power BI Dataflow, ale rovnako je možné uložiť dataflow späť do tohto modelu.
Štruktúra Common Data Model
Zdroj: What is the Common Data Model and Why Should I Care? Part 3 of Dataflow Series in Power BI – RADACAD
Následná správa dataflow sa odohráva v prostredí Power BI Služby, kde je možné nastavovať pripojenie na Power BI Dátovú Bránu (Power BI Data Gateway), manažovať poverenia zdroja údajov (credentials) a nastaviť cyklus pre plánované obnovenie dát zo zdroja. Obmedzením práce s dataflow v tímoch je, že vlastníkom dataflow môže byť len jedna osoba. Ak iný člen tímu potrebuje spraviť zmeny na dataflow, musí v prvom kroku prevziať kontrolu a až následne je schopný editácie.
Plánované obnovenie dát
Plánované obnovenie dát je funkcionalitou Power BI, ktorá umožňuje aktualizáciu dát zo zdroja do Power BI Dataflow alebo Power BI datasetu. V článku Ako získať dáta v Power BI (Časť 1) sme popísali, že DirectQuery a Dynamické pripojenie, obnovujú svoje dáta s každou užívateľskou akciou, takže nastavenie plánovaného obnovenia dát v tomto prípade nie je potrebné.
Obnovenie dát môže byť na požiadanie alebo naplánované a nastavuje sa v Power BI Službe. Počet plánovaných obnovení je limitovaný dostupnou licenciou (8x denne pre Power BI PRO, 48x denne pre Power BI Premium). Power BI Premium per Capacity umožňuje prekročiť limit 48 obnovení dát za deň využívaním Power Automate alebo PowerShellu. Power Automate obsahuje predpripravenú akciu obnovenia dát, ktorá je spúšťaná zmenou na zdrojových dátach (napríklad pridanie nového záznamu do SharePoint Online listu). Nastavenie obnovenia dát cez Power Automate je dostupné aj pre Power BI PRO licenciu, ale v tomto prípade je stále platný limit na 8 obnovení dát denne. Pri vlastníctve Power BI Premium per Capacity je obnova dát limitovaná len dostupnými zdrojmi alebo množstvom flow spustiteľných jedným užívateľom za 24 hodín (od 6 000 pre Office 365 plan po 250 000 pre Power Automate per flow plan).
Nastavenie obnovy dát pomocou Power Automate
V Power BI Službe rovnako môžeme skontrolovať históriu obnovení, ktorá obsahuje
- Podrobnosti: prístup k detailnej správe v prípade, že obnovenie nebolo úspešné
- Typ: na požiadanie alebo naplánované
- Spustiť: dátum a čas spustenia obnovy dát
- Koniec: dátum a čas ukončenia obnovy dát
- Stav: prebiehajúce, neúspešné, dokončené
- Správa: skrátenú verziu detailov v prípade, že obnovenie nebolo úspešné
História obnovení v Power BI Službe
S obnovou dát súvisí aj ďalšia funkcionalita dostupná pre Power BI Premium: Query Caching, ktorá je však v súčasnosti dostupná len pre datasety uložené v Importovanom režime úložiska. Query Caching dáva pokyn aby bola využívaná lokálna medzipamäť na ukladanie starších výsledkov dotazov, miesto toho aby boli tieto výsledky znovu počítané. Tým sa znižuje množstvo dotazov a zlepšuje výkon reportov. Počas obnovy dát dochádza aj k obnove týchto výsledkov v medzipamäti.
Nastavenie Query Caching v Power BI Službe
Query Folding
Query folding je ďalšou funkcionalitou Power BI, ktorá zlepšuje výkonnosť modela tým, že prevezme úpravy a transformácie, ktoré sme spravili nad zdrojovými dátami a preloží ich do jediného natívneho dotazu. Ten je spracovaný na úrovni zdrojovej databáze a Power BI tak dostane konsolidovanú odpoveď, čo umožňuje šetriť Power BI výkon. Query folding sa môže odohrávať, ako na strane Power BI datasetu, tak aj na strane Power BI dataflow. Typickými zdrojmi dát pre Query folding sú relačné databázy, Informačné kanály OData, Exchange alebo Active Directory.
V ideálnom prípade sa tak na začiatku transformácii nachádza čo možno najviac krokov, na ktoré je Query Folding aplikovateľný, napríklad odstránenie stĺpcov, premenovanie stĺpcov alebo filtrovanie riadkov. Nie všetky editačné a transformačné operácie podporujú Query folding. Tie ktoré túto funkciu nepodporujú, sú napríklad zmena dátového typu stĺpcu či pridanie nového stĺpcu pre komplexnú logiku. Zoznam operácií, ktoré sú podporované, Microsoft pravidelne aktualizuje na svojich stránkach.
Informáciu či došlo na dátovom zdroji ku Query folding, získavame v Power BI datasete dvoma spôsobmi, a to cez Zobraziť natívny dotaz alebo cez diagnostiku, ktorá musí byť povolená v nastaveniach Power BI Desktopu.
Zobrazenie natívneho dotazu v Power BI Desktope
V prípade Dataflow je prítomnosť Query folding indikovaná ikonami pre každý editačný a transformačný krok.
Profilovanie dát
Profilovanie dát je dôležitým krokom, pre analýzu kvality dát získaných zo zdroja a overenia si ich dátovej kvality. Power BI defaultne ukazuje prvých 1000 riadkov, ale je možné zmeniť nastavenie a profilovať tak celý dataset.
Pri profilovaní dát sledujeme:
- Kvalitu stĺpcov: počet platných, prázdnych a chybných záznamov
- Distribúciu stĺpcov: počet odlišných a jedinečných hodnôt v stĺpci
- Profil stĺpcov: detailnú štatistiku hodnôt v stĺpci (minimum, maximum, , atď.) a distribúciu hodnôt
Príklad profilovania dát v Power Query Editore
Záver
V tom článku sme sa zamerali na Power BI Dataflow, Plánované obnovenie dát, Query Folding a Profilovanie dát, ktoré úzko súvisia s témou získavania dát do Power BI. Power BI Dataflow prestavuje zdroj dát, ktorý môže slúžiť pre viacero datasetov, pričom si tieto datasety zdieľajú rovnakú logiku pre transformácie aj dáta samotné. Plánované obnovenie dát umožňuje aktualizáciu zdrojových dát, kým Query folding zlepšuje výkonnosť reportov. Profilovanie dát je dôležitým krokom pred začatím akýchkoľvek transformácii, keďže nám poskytuje informácie o kvalite a konzistencii dát. Tento článok tak rozvíja tému získavania dát v Power BI a poskytuje hlbší pohľad do funkcionalít a komponentov, ktoré ovplyvňujú naše rozhodnutie o tom akú metódu získania dát zvolíme a aké sú konzekvencie pre budúci vývoj.
Zdroje:
- Creating a dataflow: Creating a dataflow – Power BI | Microsoft Docs
- Data refresh in Power BI Data refresh in Power BI – Power BI | Microsoft Docs
- Introduction to dataflows and self-service data prep: Introduction to dataflows and self-service data prep – Power BI | Microsoft Docs
- Microsoft Power BI: Common Data Model and Azure Data Services – BRK3033: (1116) Microsoft Power BI: Common Data Model and Azure Data Services – BRK3033 – YouTube
- Power Query query folding Query folding – Power Query | Microsoft Docs
- Query caching in Power BI Premium/Embedded: Query caching in Power BI Premium – Power BI | Microsoft Docs
- Query Folding in PowerBI Query Folding in PowerBI – Microsoft Power BI Community
- Refresh your Power BI dataset using Microsoft Flow?: Refresh your Power BI dataset using Microsoft Flow | Microsoft Power BI Blog | Microsoft Power BI
- Step Folding Indicators for Power Query Online Step Folding Indicators for Power Query Online | Microsoft Power BI Blog | Microsoft Power BI
- Using the data profiling tools : Using the data profiling tools – Power Query | Microsoft Docs
- What is the Common Data Model and Why Should I Care? Part 3 of Dataflow Series in Power BI: What is the Common Data Model and Why Should I Care? Part 3 of Dataflow Series in Power BI – RADACAD
Autor: Tatiana Kardošová