Načítání dat v Power BI

Aby bylo možné v Power BI provádět analytiky, sestavovat reporty a prezentovat story, je potřeba nejprve načíst data z datových zdrojů. Power BI má zabudovanou širokou paletu konektorů pro tento účel. V tomto cvičení budou blíže představeny vybrané z nich. Na seznam všech konektorů se lze dostat přes kartu Home → Get data → More....

02-power-bi-connectors.png Fig — Dialog s výběrem konektorů k načtení různých typů dat

Q1: Na základě názvů konektorů, u kolika z nich máte tušení, jaká data by mohly zpracovávat, příp. kolik z vyjmenovaných služeb znáte?

Flat file (CSV, TXT)

Nejtriviálnějším datovým zdrojem pro zpracování je tzv. plochý soubor, který obsahuje data uspořádaná do řádků a sloupců. Typickým zástupcem této skupiny jsou CSV (Comma-Separated Values) soubory, ve kterých jsou data zapsána prostým textem do řádků a jednotlivé hodnoty jsou, jak napovídá název, oddělené symbolem čárky. Jako oddělovač však může být obecně zvolen libovolný symbol, byť sémanticky nekorektně, a je pouze na uživateli, aby použitý symbol v datech správně rozpoznal. Občas se používá přípona TSV pro soubory, ve kterých je oddělovačem tabulátor. V české lokalizaci se velmi často setkáte se symbolem středníku jako oddělovačem z důvodu používání čárky ve významu desetinného oddělovače v číslech.

Jednomu záznamu obvykle odpovídá jeden řádek souboru. Hodnoty uzavřené v uvozovkách však mohou obsahovat i samotný oddělovač nebo zalomení řádku. Při načítání proto záleží nejen na volbě oddělovače, ale také na správném zpracování uvozovek.

Další vlastností textového souboru je kódování, tedy způsob, jakým jsou znaky zapsány pomocí bajtů. U českých dat se můžeme setkat například s kódováním Windows-1250, které používá jeden bajt na znak a podporuje omezenou sadu znaků včetně české diakritiky. Naproti tomu Unicode zahrnuje znaky mnoha jazyků i další symboly. Jedním ze způsobů jeho zápisu je UTF-8, ve kterém může znak zabírat jeden až čtyři bajty.

Pokud soubor načteme s nesprávným kódováním, mohou se například místo českých písmen objevit jiné znaky nebo náhradní symboly. Volbou kódování při importu určujeme, jak má aplikace uložené bajty interpretovat, ale původní soubor tím neměníme.

Po výběru File → Text/CSV z nabídky konektorů (předchozí obr.) bude uživatel dialogovým oknem vyzván k výběru požadovaného souboru. Dialog je klasické okno průzkumníka a lze se tedy dostat například i na síťové disky, případně zařízení na lokální síti. Po výběru jednoho souboru dojde k automatické detekci jeho struktury. V dialogovém okně aplikace nabídne výpis exportovaných názvů atributů a několik prvních zpracovaných řádků. Pokud nedošlo ke správnému parsování souboru, je možné změnit přes možnosti v horní části použitou znakovou sadu (File Origin), použitý oddělovací symbol (Delimiter) a způsob detekce datových typů. Při změně nastavení parsování se náhled přegeneruje. Stisknutí tlačítka Load provede načtení dat do interního datového modelu.

Další běžné soubory (XLS, PDF)

Power BI i MS Excel používají pro načítání a transformaci dat nástroj Power Query. Po volbě File → Excel Workbook a výběru příslušného souboru se zobrazí dialogové okno se seznamem jednotlivých datových listů sešitu, pojmenovaných tabulek nebo rozpoznaných oblastí. Uživatel zaškrtne checkbox u položek, které chce importovat jako jednotlivé tabulky.

Trochu divokou kartou je možnost parsování PDF souborů File → PDF. PDF soubor je typicky spíše dokument obsahující vysázený text a množství vložených objektů – tabulek a obrázků. Právě tabulky se z PDF souboru snaží příslušný Power BI parser získat, ale z mé zkušenosti je úspěšnost relativně malá. Často dojde k různým posunům v datové matici nebo k načtení řady zbytečných prázdných hodnot. Podobně jako při načtení excelovského sešitu má uživatel k dispozici seznam detekovaných tabulek s jejich náhledem a má možnost si jejich podmnožinu naimportovat do modelu projektu.

Další běžné soubory se zvláštní strukturou (JSON)

Aplikace Power BI nabízí poměrně jednoduchý způsob zpracování JSON souborů. Jedná se o soubory s hierarchickou strukturou vystavěnou pomocí dvojic klíč–hodnota. Hodnotou může být text, číslo, pravdivostní hodnota nebo vnořený JSON objekt. Hodnota může být prostá, nebo násobná (array). Nejpalčivějším problémem při zpracování tohoto typu souboru je zploštění hierarchické struktury do 2D tabulky.

Po načtení souboru se rovnou otevře transformační dialog, který by se u ostatních datových zdrojů otevřel při stisknutí tlačítka Transform Data namísto Load. Detailní představení tohoto dialogu bude ve cvičení tematicky zaměřeném na transformaci a čištění dat. V případě práce s JSON souborem je podstatné, že v některých hodnotách jsou barevně zvýrazněná slova Record a List, což značí, že na tomto místě je vnořený JSON objekt, resp. array.

Odkazovaný ukázkový soubor obsahuje informace získané z API pro hru StarCraft II, popisující 184 herních účtů. Při načtení do Power BI se automaticky provedou operace rozkládající vstupní data do 2D tabulky. Všimněte si pojmenování sloupců, kde je uchována informace, jakou cestou se k atributu při zpracování došlo. Například sloupec dateCrawled byl v kořenu původního souboru, atribut league.league_key.season_id byl zanořen pod klíči league a league_key.

Q2: Co představuje jeden řádek výsledné tabulky? Vyberte jeden sloupec s vícedílným názvem a dohledejte jeho hodnotu v původním JSON souboru. Proč se hodnoty dateCrawled a league.league_key.season_id opakují na více řádcích, přestože jsou v původním souboru uvedeny pouze jednou?

※ Posloupnost transformačních operací je vidět v pravé části Power Query Editoru. Více v samostatném cvičení.

Další neběžné konektory (složka)

Power BI nabízí mimo jiné i možnost zpracovat určitou staticky definovanou složku. Příslušná volba se nachází pod File → Folder. Po výběru složky se zobrazí dialog s tabulkou obsahující metadata souborů obsažených v dané složce. Všimněte si, že jeden z atributů je datového typu Record a lze ho transformovat stejným způsobem jako JSON objekt. Kromě standardních možností Load a Transform je v tomto případě nabízena ještě možnost Combine. Touto cestou je možné, pokud jsou datové soubory ve složce homogenní, spojit obsah souborů do jednoho logického celku. Tato možnost je nicméně dostupná i jinou cestou přes Power Query.

Zkuste uložit do společné složky Cheb + Karlovy Vary a použijte Combine. Následně do stejné složky přidejte i Přimdu a obnovte načtení datových zdrojů přes Refresh.

Q3: Kolik záznamů bylo v kombinované tabulce před refreshem a kolik poté? Podle čeho lze identifikovat, k čemu data patří?

Vzdálené zdroje (webová stránka, API)

Zajímavou možností je zpracovávat odpověď na HTTP dotaz z veřejného API rozhraní. Výsledky často mají podobu JSON souboru, který lze transformovat postupem výše. Pokud neexistuje specifický konektor, lze použít obecný webový konektor Other → Web.

Ve volbě Basic je možné zadat pouze URL adresu API endpointu. Po přepnutí na Advanced je dále možné specifikovat hlavičku požadavku. Pro komplexnější nastavení autentizace je potřeba využít dialog Data source settings (viz dále).


Úkol: Načtěte v Power BI odpověď na libovolný SPARQL dotaz.

Postup: Pokud nemáte žádný nápad, zkuste najít inspiraci například na SPARQL endpointu pro Wikidata. V horní části stránky je tlačítko Examples poskytující některé návodné dotazy. Po stisknutí tlačítka Execute Query (bílý trojúhelník v modrém čtverci) se dotaz vykoná a nad výsledky bude tlačítko Link → SPARQL endpoint, které vám umožní získat přepis URL adresy. Adresu lze použít v Power BI jako by se jednalo o běžnou stránku.

SPARQL endpoint standardně vrací výsledky ve formátu XML. Pro toto cvičení si vyžádáme jednodušší tabulkový formát CSV. V dialogu webového konektoru přepněte na Advanced a v části HTTP request header parameters přidejte hlavičku Accept s hodnotou text/csv. Touto hlavičkou serveru sdělujeme požadovaný formát odpovědi.

02-web sparql.png


Stejným způsobem se lze pokusit o načtení dat přímo z webové stránky. Power BI dokáže na webové stránce rozpoznat tabulky a nabídnout jejich načtení. Výsledek však závisí na způsobu, jakým stránka data poskytuje. U dynamicky načítaného nebo stránkovaného obsahu může být načtena pouze část dat, případně nemusí být požadovaný obsah rozpoznán vůbec. Proto je potřeba ověřit úplnost výsledku.

Pro ilustraci tohoto problému můžete vyzkoušet některá mnou udržovaná data:

Relační databáze (PostgreSQL)

Power BI nabízí konektory k řadě relačních databází, například PostgreSQL, Oracle nebo Microsoft SQL Server. V nabídce Home → Get data → More... vyberte konektor PostgreSQL database. Pro připojení potřebujete adresu serveru, název databáze a přihlašovací údaje.

Pole Hodnota Význam
Server DB_SERVER:DB_PORT Adresa serveru a port, například localhost:5432 pro lokální databázi.
Database DB_NAME Název databáze, ke které se chcete připojit.

V části Data Connectivity mode zvolte Import. Data se tím načtou do modelu Power BI. Jejich pozdější změny ve zdrojové databázi se projeví až po obnovení dat.

Při prvním připojení se zobrazí dialog pro ověření uživatele. Vyberte způsob přihlášení Database a vyplňte uživatelské jméno a heslo pro připojení.

Po úspěšném připojení se otevře dialog Navigator, ve kterém lze vybrat dostupné tabulky a pohledy. Podle oprávnění přihlášeného uživatele se může jejich nabídka lišit. Vybrané položky načtěte tlačítkem Load, případně pokračujte přes Transform Data do Power Query Editoru.

Místo celé tabulky lze načíst také výsledek vlastního SQL dotazu. Ten se zadává při vytváření připojení v části Advanced options → SQL statement.

※ Přístup k univerzitnímu databázovému serveru je omezen na univerzitní síť. Správné přihlašovací údaje proto samy o sobě nezaručují dostupnost serveru z domova. Případné požadavky na šifrování a certifikáty závisejí na konfiguraci konkrétního serveru.

Změna konfigurace konektorů v projektu

Pro načtené soubory (nebo obecně data získaná nějakým konektorem) si Power BI uchovává metadata o jejich zpracování, tedy umístění a způsob parsování. Pokud dojde ke změně dat ve vstupním souboru, projeví se to při dalším refreshi v Power BI. Negativním důsledkem toho je, že není dobré zdrojové soubory přemisťovat nebo přejmenovávat. Došlo by pak k chybě při refreshi a tím by se předčasně ukončil celý proces obnovení dat. Již načtená data tím nezmizí, ale pro jejich další obnovení je potřeba cestu opravit.

Pokud by došlo k situaci, že je nutné aktualizovat odkaz na soubor nebo jinak změnit nastavení použitých konektorů, je k dispozici příslušný dialog na kartě Home → Transform Data (roleta) → Data source settings. Zde je přehled všech konektorů a tlačítky Change Source a Edit Permissions lze změnit uložené nastavení.


Materiál k cvičení KIV/INS · týden #3 · ZS 2026/2027

Autor: Yuki Kryl · poslední úprava: 7. 10. 2026

Využití AI: GPT-6 Astra via Codex pro jazykové a formátovací úpravy, dále pro diskusi nad obsahem a strukturou cvičení.