10. března 2017

Power BI - Jak na načítání dat z webu

Ve svém minulém článku o novinkách (http://www.neoral.cz/2017/03/power-bi-nejen-novinky-v-produktu-rijen.html) jsem zmiňoval, že došlo ke změně u konektoru pro načítání dat z webu. Jaké to má pro nás dopady? Co funguje a co nikoliv, to bych rád shrnul v dnešním článku. K demonstraci použiji své oblíbené demo s načítáním kurzovního lístku ČNB. Demo jsem už sice ukazoval jak na konferencích, tak na WUGu online v rámci české Power BI User Group. Dokonce jsem nahrál i video na Youtube (https://www.youtube.com/watch?v=wySm-v78RGI&t=48s). Nicméně textově to  ještě nikde zdokumentované nemám. A pro návod vždy hledat video, nemusí být optimální.
Cíl je jasný. Načíst kurzovní lístek z ČNB pro aktuální rok.
V Power BI Desktopu vybírám get data – from web, vkládám adresu. Vystačil bych s výběrem Basic, ale jen pro úplnost přidávám screenshot, jak vypadá advanced mód.
Potvrzuji a můžu se podívat na náhled dat. Eventuelně můžeme změnit lokální nastavení, ze kterého načítáme.
Edituji dotaz. Dávám použít první řádek jako hlavičku.

Pravým tlačítkem na sloupec s datumem vybírám unpivot other columns, abych dostal měny a kusy na řádky
Rozděluji počet kusů a měnu do dvou sloupců podle oddělovače
Následuje oblíbená funkce změna datového typu u kurzu s použitím lokálního nastavení. Tímto se odstraní problémy s různými desetinými oddělovači a odělování řádů.


Dolaďuji formáty a přejmenovávám hlavičku
Vykresluji graf po dnech a přidávám slicer s měnou.
Na lokále hotovo. Publikuji report do Power BI služby. Teď aktualizace. Ve zmiňovaném článku o novinkách (http://www.neoral.cz/2017/03/power-bi-nejen-novinky-v-produktu-rijen.html). Jsem psal, že bohužel nově nelze aktualizovat data z webu bez Power BI Gateway.
Nastavení anonymního přístupu k URL bez Gateway také neprojde :(
Gateway můžete použít jak Enterprise, tak Personal (typ instalace u On-Premises Gateway).
Já používám firemním enterprise gateway. V konfiguraci přidávám nový zdroj, typ web a vkládám adresu. Typ přístupu anonymní.

Poté už aktualizace dat nastavit jde a projde jednorázově i pravidelně.
Bohužel pokud je adresa složená dynamicky, ať už funkcí jak jsem prezentoval na videu. Nebo jen doplnění poslední části adresy (číslo roku) na základě datumu. Brána vám řekne, že nejde dataset aktualizovat, kvůli nepodporovanému zdroji. Tohle je obrovská škoda. Snad s tím Power BI team něco udělá.
Závěr

V dnešním článku jsem ukázal, jak načíst kurzovní lístek z webu ČNB s návodem krok po kroku. Stejně tak jsem ukázal, jak rozchodit pravidelnou aktualizaci. Zde jsou dva problémy, potřebujete bránu a nefunguje aktualizace z parametrizované adresy. Požadavek na bránu chápu tak, že přestože je web veřejně dostupný, chce Power BI team buď odstínit ze své infrastruktury onu zátěž potřebnou pro aktualizaci. Nebo možná také, a je to snad i více pravděpodobné, distribuovat zátěž na zdrojový web, aby šel dotaz na web odjinud, než z Power BI datacenter. Tímto se vyhnout blokování ze strany provozovatelů webu, pokud by byla zátěž příliš vysoká. Co se týká aktualizací parametrizovaných adres, tak očekávám, že se jedná o nějaký technický problém, který má nízkou prioritu pro vyřešení. Nezbývá než hlasovat na fórech, že je to něco o co stojíme.

Žádné komentáře:

Okomentovat