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.

3. března 2017

Power BI – nejen novinky v produktu říjen 2016 – únor 2017

Za posledních pár měsíců se nakumulovalo tradičně hodně nových funkcí v Power BI desktopu, službě a mobilních aplikacích. Rád bych shrnul nejen tyto novinky, ale co Power BI ve světě. Měl možnost navštívit UK Power BI Summit, takže se podělím o získané informace o funkcích, které zatím nevyšly, ale byly veřejně přezentovány jako ve frontě (takže vyjdou v nejbližších měsících). Vyšel také Gartner Magic Quadrant pro oblast Business Intelligence. Podíváme si, jak si Microsoft stojí proti konkurenci. Začnu novinkami v Power BI Desktopu
Desktop
Obecně rozšířené možnosti slicerů. Přibyl nám datumový slicer a drop down slicer, který ušetří spoustu místa na ploše reportu.
Při tvorbě reportů můžeme uchytit vizualizace k mřížce a mít přesnější kontrolu nad rozložením stránky.
Vylepšení popisků graf a os. Konečně můžeme měnit velikost popisků osy x a y u grafů. Tloušťka čáry u čarového grafu
Seskupování (tvorba manuální skupiny, binning), top N filter, zahrnout, odstranit datové body.
Vlastní vizualizace postavené na Rku, bez nutnosti ovládat, či psát R kód. (chci se pověnovat samostatně).
Konektory OLEDB, Microsoft Dynamics 365,Mixpanel. Spark živé připojení. Konektor Visual Studio Team Services. Podpora pro SQL Failover u SQL konektoru. OData – folding u expand record operace. Azure SSAS. Update web konektoru. Změny u konektoru na Web (aktualizace vyžaduje gateway). Query dependencies dialog. ODBC a OLEDB podporují výběr napojených tabulek. Sjednocený text a CSV konektor. PowerApps Common Data Service konektor. Změna datového typu na hlavičce sloupce.
Podmíněný formát v matrixu. Kontrola nad podmíněným formátováním prázdných buněk.
Barvy os a popisků u grafů. Clustering v XY grafu.
Zalamování dlouhé hlavičky sloupců u tabulek a matrixu.
Nové agregace u datového typu datum/čas (earliest, latest)
Mobilní rozložení reportu nyní veřejně dostupné.
Rychlé výpočty: procento celku pro řádky a sloupce
Odkazy na Solution Templates a Partner Showcase na pásu karet
Služba
Služba se aktualizuje každý týden. Update obsahuje opravy a nové funkce. Power BI team vydává samostatný blog, pokud se jedná o nějakou větší, zajímavější funkci. Shrnutí toho nejpodsatnějšího za poslední měsíce je následujícíZavedení Power BI admin role v Office 365. Nemusíte být Office 365 admin, abyste měli kontrolu nad administrací Power BI.
Audit logy globálně dostupné.
Email subscriptions – subscriptions pošlou email se screenshotem stránky pokud dojde ke změně dat na dané stránce (zatím maximálně jednou denně). Zatím ne úplně použitelné, ale první vlaštovka.
Nové API pro vývojáře vlastních vizualizací
Streamování v realném čase globálně dostupné
Push řádků do Power BI za použití Flow
Micosoft Azure AD content pack
Preview nové navigace
Embed Power BI Dashboardů do aplikací
Integrace Power BI Reportů do SharePointu Online
Mobile
Oblíbené, jako domovská stránka. Filter reportu podle geo lokace. Intune integrace pro Android. Centrování mapy podle geolokace. Anotace a sdílení anotací. Podpora pro Android tablety. SSRS autentizace s použitím ADFS.
UK Power BI Summit
16-17.2 se v Londýně konal UK Power BI Summit. Pořádala jej komunita komunitě. Ale dorazili i dva členové Power BI produktového týmu z Redmondu, kteří rádi zodpověděli i šťouravé dotazy zvědavého publika. To bylo na celé akci nejpřínosnější a poté samozřejmně networking se stejně postiženými lidmi :) První den byl celodenní training/workshop od produktového týmu, (nebo Cortana Intelligence Workshop kam jsem se nevydal ani ja, ani nikdo ze 7mi kolegů, takže nevím jak to probíhalo). Druhý den byly konferenční přednášky s různě kvalitním obsahem.
Klíčové novinky, které byly oznámeny, nebo i prezentovány jsou následující. Výpočty u SSAS nad živým připojením. Tohle mi moc chybí. V první fázi to bude DAX nad tabularem, můžeme doufat, že se dočkáme i výpočtů nad multidimenzionálními modely. Vylepšená práce s tabulkou, drilování a tabulka ovlivňující okolní grafy.
Jednou z nejčastějších odpovědí skrz chybějící funkce bylo: „je to na roadmapě, hlasujte na fóru pro funkce, které vám chybí“. Jednou z pro mne podstatných odpovědí byl trend pro následující měsíce. Vyznělo to ve stylu: „Soustředili jsme se na dotáhnutí analytických funkcí a jak se probouchat k datům. V následujících měsících se více zaměříme na lepší kontrolu nad vizualizacemi.“ Takže kritizovaná neúplná kontrola nad vizualizacemi je momentálně na předním místě. Uff, toto trvalo (v perspektivě normálního smrtelníka krátce, v perspektivě Power BI věky).
Gartner
Microsoft byl vyhlášen jako jeden ze třech leaderů v Business Intelligence and Data Analytics Magic quadrantu. Další leadeři jsou Tableau a Qlik. Microsoft označen za nejsilnějšího s ohledem na „úplnost vize“.
Research image courtesy of Gartner, Inc.
Coby silné stránky byly hodnoceny cena, jednoduchost použití a komplexnost analýzy. Vize a aktivní komunita. Mezi body, které je potřeba mít na paměti jsou zmiňovány „nedospělost“ produktu (to jsme si lehce zažili ve firmě, že s u enterprise nasazení mohou být problémy. Dostupnost řešení pouze v cloudu (což nebude pravda zhruba od roku 2017 jak jsem psal http://www.neoral.cz/2017/01/power-bi-on-premises-v-reporting.html).
Šířka použití byť Power BI má širší portfolio funkcí, referenční zákazníci je používají primárně jako nástroj pro parametrizované reporty a dashboardy. Mezi slabé stránky je považován support. Platící zákazníci nedostávají support takový, jaký by očekávali (o tom jsem taky něco slyšel). Referenční zákazníci používají Power BI jako doplňkový nástroj ke škále dalších produktů, nikoliv jako tahouna, který by byl standardem.
Další věci, které stojí za zmínku
Ministerstvo obrany vlády Spojených Států udělilo nejvyšší akreditaci DOD Level 5 Microsoft Azure a Office 365 datacentrům jako prvnímu a zatím jedinému komerčnímu poskytovateli cloudových služeb. Takže diskuze typu jestli uložení dat v cloudu je bezpečné... Pro ministerstvo obrany USA zdá se ano, jestli pro Vás, to si zodpovězte sami :)
Závěr
Přibyla spousta nových funkcí. Byl oznámen směr vývoje produktu, který se mě osobně líbí. A Microsoft s jeho produkty jede :)

14. února 2017

Power BI Auditing

Lednový update Power BI Service nám přinesl auditování využití Power BI služby do našeho regionu (Evropa). Předtím byla tahle funkce dostupná v US regionech. K čemu je to dobré? Hodilo by se Vám mít podrobný přehled o tom kdo obsah vytvořil, smazal. Tady nekončíme, auditing podporuje i sledování využití Power BI reportů a dashboardů. Když něco vytvoříte, vždy se hodí mít zpětnou vazbu, kdo a jak často na reporty kouká. V reporting services za tímto účelem můžete použít tabulku Executionlogstorage, nebo views derivovaná z této tabulky. V Power BI můžeme použít auditing.
Jak tedy na to?
V Power BI Službě musíme do Admin portálu a funkci auditingu explicitně povolit. Abyste tohle mohli udělat, musíte být v Power BI Admin roli v Office 365.
Přestože k nastavení dojde hned. Zalogované informace uvidíte až se zpožděním. Pro Power BI může toto zpoždění činit až 24 hodin.

Pro procházení logů musíte do Security & Compliance Centra v Office 365. Search & investigation. ,Audit Log search. Na následujícím obrázku vidíte seznam událostí, které můžete sledovat.
Najdeme zde zobrazení dashobardu/reportu. Exporty, tisk, publikaci na web. Přidání členů do role, zahájení trial verze a další.


Poté, co se podaří Office 365 informace zalogovat, informace ve vyhledávači vypadají následovně.
Kdy, kdo, co, který report/dashboard atd.
Kompletní aktivitu můžeme vyexportovat do csv, kde detailní informace tvoří AuditData sloupec v JSON formátu.
Stačí ale udělat Power Query dotaz nad tímto zdrojem přímo z vybrané tabulky, JSON rozparsovat a můžeme tvořit kontingenční tabulku s přehledným výstupem zobrazení reportů, dashboardů pro vybrané uživatele.
Závěr
Na tohle jsem čekal dlouhu. A dočkal se :) Power BI auditing přináší možnost sledovat, co kdo dělá s vaším Power BI tenantem za účelem zpětné vazby. Umožní najít klíčové uživatele, se kterými řešit změny a stejně tak prioritizaci při změnách do stávajících reportů. Když někdo kdo report chtěl tento report nevyužívá, můžete se ptát proč.

18. ledna 2017

Power BI On Premises v Reporting Services k dispozici

Na konci října 2016 jsem psal o možnosti vyzkoušet si Power BI integorvané v Reporting Services (http://www.neoral.cz/2016/10/power-bi-on-premises-v-ssrs.html) díky virtuální stanici v Azure (což není tak úplně on premises). Reporting Services tým včera vydal instalační soubory, které umožňují si tuto technologii opravdu vyzkoušet čistě on premises ať už na fyzickém počítači, tak ve vlastní virtuálce. O tom je také dnešní článek
Co budete potřebovat?
Virtuálku/neprodukční fyzický server
Windows Server 2012 či novější / Windows 8 či novější
.NET Framework 4.5.2 a novější
SQL Server 2008 a novější pro hostování RS databáze
Aktuální verze podporuje jen živé připojení proti analytickým službám. Na import si ještě počkáme. Byť v oficiálním blogu (https://blogs.msdn.microsoft.com/sqlrsteamblog/2017/01/17/power-bi-reports-in-sql-server-reporting-services-january-2017-technical-preview-now-available/) členům RS týmu proklouzlo, že pro držení datových modelů budeme potřebovat SQL Server Analysis Services (2012 SP1 CU4) nebo novější :) I importu se tedy dočkáme
Dále budeme potřebovat instalační soubory pro SQL Server Reporting Services Technical Preview dostupné zde
Součástí je instalačka na samostatně stojící reporting services a speciální nehádavá verze Power BI Desktopu (může existovat současně s instalací klasického Power BI Desktopu)
Instalace
Instalací nás provede průvodce a nedá se toho moc pokazit. S podmínkami souhlasit tradičně musíme
Po instalaci dáme konfigurovat Report Server, kde musíme nastavit tři věci. Prvně si ale všimněte v configuration manageru, že se jedná o pojmenovanou instanci RSServer. Jméno pojmenované instance nejde změnit.
Prvně vytvoříme pod položkou database novou reportservrovou databázi. Proces je stejný jako u klasických reporting services.
Database – Change Database, Create new, Next Next Next Finish (pokud vyhovuje výchozí jméno)
Dále musíme nastavit Web service URL. Stačí kliknout na záložku, pokud adresa vyhovuje tak apply.
Dále podobně Web Portal URL a apply.
Klikneme na adresu otevře se nový portál který vypadá stejně jako v RS 2016.
Můžete otevřít Power BI Desktop v RS Provedení (instalačka na stejném linku), vytvořit report s živým připojením a tento poté vypublikovat do portálu

Po uploadu souboru můžete prohlížet report v browseru.
Závěr
Skutečná on-premises verze reporting Services s Power BI je tu. Přeji příjemné testování :)

4. ledna 2017

SQL Server 2016 SP1 a SQL Server vNext

Máme tu nový rok a první článek. Mnozí z nás se ještě nestihli vzpamatovat z příchodu SQL Serveru 2016 (natož aby stihli zmigrovat) a už nám vyšel první service pack pro SQL Server 2016, který tentokrát není jenom záplatami pro stávající produkt, ale přináší i nové funkce, případně odemyká funkce pro uživatele edice Standard. Týmy v Redmondu nezahálí a už stihli vydat CTP 1.1 nové verze SQL Serveru, kde ostrá verze se očekává v polovině roku 2017. Takže pokud jste 2016ku nestihli, zvažte, jestli ji rovnou nepřeskočit.
SQL Server 2016 SP1
Začnu funkcionalitou, které funkce odemkl SP1 pro uživatele edice standard. Z BI funkcí se jedná o Columnstore, Partitioning, PolyBase, Change Data Capture. Pro podrobnější seznam přikládám screenshot z oficiálního blogu s dostupností funkcí v edicích v RTM a v SP1
Pro detailnější informace k Service Packu bych vás odkázal na oficiální blog v angličtině
Největší radost lidem z BI branže udělá asi právě column store.
Co se zatím ví o ...
SQL Server vNext
Ostrá verze bude dostupná v polovině roku 2017 a bude fungovat i na Linuxu (aktuálně si můžete zkusit preview)
První CPT obsahuje následující rozšíření
Analysis Services
Nový kompatibility level pro Tabular
„Nový“ způsob získávání dat. Máme Power Query přímo v AS Tabular
Zabezpečení na úrovni celých tabulek
Podpora „ragged hierarchies!
SSIS
Scale Out, Podpora pro Microsoft Dynamics Online
R integrace
R balíčky sqlrutils pro jednodušší integraci s SQL olapR pro konektivitu proti SSAS
Pár nových T-SQL funkcí
S ohledem na ...
Power BI integrace
že
První verze Power BI integrované do RS testovatelné v on-premises prostředí se dočkáme v polovině ledna 2017, čili velmi brzy :)
Integraci do SQL Server 2016 neplánují v žádné podobě (SP, kumulativní update, nic)
Čeho se dočkáme
Dalších konektorů, vlastních vizualizací, možnosti koukat na On-premises Power BI přes mobilní aplikaci, vlastních vizualizací.
Co se neplánuje
Dashboardy, Q&A, Quick Insights... no žíly potrhané nemám :)
Závěr
Bohatá nadílka se nám před Vánoci urodila a čeká nás spousta zajímavých věcí v roce 2017. Pokud jste již zmigrovali na SQL Server 2016, koukněte co nového přinesl Service Pack. Pokud jste investici zvažujete a netlačí vás čas, zvažte vNext. Již brzy si budeme moct sáhnout on-premises na integrovanou verzi RS a Power BI.

14. prosince 2016

Power BI po více než roce v produkci

tak se jmenovala přednáška, kterou jsem nabídnul pro úplně první SQL Saturday konanou na území ČR. Akce se konala 3.12.2016. Nicméně témata bylo nabídnout o dost více vepředu. Dnešní blog bude pro ty, kteří se přednášky nemohli zúčastnit. Ale také bude pro ty, kteří na přednášce byli a zajímá je, jak telenovela pokračuje/dopadla. Dopředu ale musím říct, že telenovely nikdy nekončí, vždy jen pokračují. Jenom sem tam někdo umře na 20 dílů, aby poté ožil. Protože těch 20 dílů, to celé byl jen sen.
Úvod
Když jsem vymýšlel téma na přednášku, několik měsíců dopředu, chtěl jsem téma nadčasové. U technologie jako Power BI vybrat téma, které bude aktuální i za půl roku je docela výzva. Co je však vždy aktuální je vlastní zkušenost. Do takového tématu může člověk dostat cokoliv přes souhrn vlastností, kam se produkt za rok posunul včetně toho, co se líbí/nelíbí. Časování tomu nahrávalo. SQL Saturday týden po Black Friday (pátek po Díkuvzdání, svátek konzumu) – nejkritičtějším dnu v našem retailovém byznysu. Vloni jsem shrnul zkušenosti v článku Power BI – zkušenosti z praktického nasazení zde: http://www.neoral.cz/2015/11/power-bi-zkusenost-z-praktickeho.html
Letos jsme znali svého nepřítele (omezení produktu dopředu). Byli jsme o rok chytřejší a produkt o rok dospělejší. Plán byl udělat to celé lépe na základě zkušeností :)
Drobný úvod z pohledu důležitosti dne pro náš byznys. V průběhu Black Friday se v průběhu jednoho dne prodají několikanásobné objemy v porovnání s dny normálními. Je to v podstatě takový další týden v roce. Uživatelé ze strany byznysu chtějí intradenně sledovat co se děje s prodeji a pokud bude někde nalezen problém, analyzovat detailněji s čím konkrétně problém je, aby se dala hledat příčina a potenciálně řešení. Vymyslím si jeden příklad, abych nastínil modelově situaci. Člověk odpovědný za produktovou kategorii „Bílé zboží“ zjistí, že při meziročním srovnání za ekvivalentní čas prodejů je 2% níž, než loni. Zajímá ho, o kterou obchodní oblast se jedná. Zjišťuje největší problém u ledniček. Cena sama o sobě mnoho nepoví. Koukne na prodané kusy. Vidí, že se jedná o konkrétní značku. Kde se stala chyba? Jedná se o problém s dostupností zboží (málo jsme naskladnili). Máme zboží dost, špatně nastavená cena... Může v průběhu dne změnit cenu a podpořit prodej této problematické značky. Ve zkratce řečeno, intradenní mission critical reporting ve snaze být s daty zpožděný co nejméně a aby mohli reagovat i lidé mimo firmu (na prodejnách). Reporty měly být dostupné odkudkoliv.
Co jsme měli loni
Power BI dashboard postavený metodou využívající import dat na úroveň produktu Merchandise area (velké televize, malé televize, ledničky, sušičky, ...). Aktualizace probíhala přes personal gateway. Musel jsem duplikovat některé grafy (nemožnost drillthrough). Docela hojně jsme používali vlastní vizualizace.
Problémy z loňska
na které jsme narazili na Black Friday a poté při dennodením používání dashboardu. Limit 8 aktualizací za den a nemožnost spolehnout se na scheduler. Nemožnost sladit aktualizaci dashboardu s ETL. Ve špičce jsme tedy skončili tak, že jsme dashboard aktualizovali ručně. Tento byl také vysdílen v „My workspace“, takže nulová možnost sdílení administrace (jinak než nasdílením hesla). V průběhu roku jsme spoléhaly na automatizovanou aktualizaci 8 krát denně (semtam se něco pokazilo a opravilo bez zjevné příčiny). V průběhu roku se několikrát stalo, že vlastní vizualizace zmizeli, člověk musel stáhnout poslední verzi, naimportovat do reportu a tento znovu vypublikovat. Dashboard se ale uživatelům líbil, ale na backendu bylo spousta práce... Práce kterou jsme si chtěli odpoustit v novém roce.
Plán na letošek
zbavit se protivných aktualizací na které se nedalo přesně spolehnout (aktualizace probíhá co nejblíže specifikovanému času, dle vytížení služby se může spustit později, navíc nám nestačilo 8x za den). Použít živé připojení, které přinese jednak možnost vynutit security model a jít až na detail produktu. Použít nové funkce na straně vizualizací, jako například drillthrough, podmíněné formátování, optimalizaci reportu pro mobil a další, že to ani všechno nevyjmenuji. Dále bylo v plánu vyhnout se vlastním vizualizacím z důvodu „mizení“. Ponechal jsem jen scroller.
Technicky jsem to implementovali tak, že jsem vytvořil extra SSAS kostku v multidimenzionálním provedení a zahrnul veškerou logiku potřebnou pro dashboard v této kostce. Umožní nám to recyklovat logiku do různých nástrojů (SSRS, Excel, Power BI) a být tak blízko reálnému času, jak nám jen ETL dovolí. Kostka obsahovala role vynucující row level security. Dashboard byl nasdílen do sdíleného pracovního prostoru, kvůli sdílení administrace.
Vytvořili jsme 3 dashboardy, jeden hlavní a dvě odvozené lehce modifikované verze. Vývoj kostky, dashboardů a testování s tím spojené si vzalo několik týdnů. Dashboardy vypadaly opravdu dobře a měl jsem z nich dobrý pocit...
Jak to šlo
a to až do úterý 22.11 odpoledne. Před peakem jsme se přesunuli s částí týmu do Londýna do hlavního sídla firmy, abychom mohli prezentovat dashboardy uživatelům a být jim k ruce pokud bude potřeba. Bohužel komunikace přes Power BI Enterprise Gateway začala nepředvídatelně padat. Lítaly nám chybové hlášky, kolečko se točilo, točilo a nedotočilo. Když dotočilo, tak chybová zpráva, ale bez popisu chyby. Začalo ladění nejprve se supportem z Microsoft UK. Na případu se vystřídalo několik lidí, což zpomalovalo komunikaci. Postupem času se nám podařilo vybranými kanály poměrně rychle probouchat až k Power BI Gateway týmu v US. Poté se začal troubleshooting vyvíjet trochu lépe, to ale předbíhám. Na straně naší infrastruktury jsme měli vše podchycené z pohledu disaster recovery. V podstatě mirrorovanou konfiguraci všech serverů. Nainstalovali jsme druhou gateway, kterou jsme neměli dopředu. Ale bohužel nefungovala komunikace ani přes tuto bránu. Server byl dostupný ze všech ostatních nástrojů (SSRS, Excel napojený na kostku, Power BI desktop), tudíž jsem podezříval problém na straně Power BI. Kouknu do Office 365 na service health a skutečně vidím u Power BI „service degradation“ a že by to mělo být vše v pohodě 24.11 odpoledne US času.... To je trochu blízko pátku na to abych byl v klidu. S UK supportem jsme v úterý večer a v noci nebyli schpni najít řešení problému. Bylo potřeba přijít s plánem B a to velmi rychle. Reporting pro uživatele přistupující k datům z firmy jsme podchycený měli  (SSRS a Excel). Jak ale poskytnout za dané situace uživatelům data mimo firmu (manažerům jezdícím po obchodech atd.). Na nasazování nové technologie není čas.
Plán je následující:
a)      snažit se rozchodit live connection
b)     udělat verzi reportu, která bude používat data import (jak loni) aktualizovat přes bránu
c)      pokud bude u bodu b problém s aktualizací bránou, aktualizovat v Power BI desktopu a přepisovat soubor
d)     to snad nebude potřeba
23.11 ve středu dávám cvičení Dashboard in a day. Logiku, kterou jsem implementoval měsíc do kostky a která byla dopředu otestována, přebouchávám do reportu používajícího data import. Metodu jednoduše přepnout nejde už kvůli výpočtům. Takže co jsem psal v MDX, přepisuji do DAXu no prostě pěkné cvičeníčko. Já jsem zaneprázdněn plánem B, občas přepínám k troubleshootingu plánu A, na callech se supportem bohužel musí vysedávat šéfová
24.11 ve čtvrtek, brána chvíli jede, chvíli ne, nicméně jí nikdo nevěří, že pojede v onen další kritický den. Musíme se rozhodnout s čím do toho další den půjdeme. Volíme verzi import
25.11 pátek Black Friday je tu. Ze 3 dashboardů jsem stihnul předělat pouze ten hlavní, aby využíval data import odvokzené verze jsou stále jako live connection. Brána bohužel zlobí. Byl jsem dedikován na podporu uživatelů z produktové kategorie bílé zboží. Na dotazy odpovídám z Power BI desktopu a nakonec otvírám Excel napojený na kostku. Všechny dotazy jsem zodpovídat ve velmi rychlém tempu, uživatelé spokojeni. Mezitím ostatní se věnují dalším týmům. S refreshem se tak nějak střídáme a ano museli jsme sklouznout i k plánu C, aktualizace přes bránu zlobí stejně jako živé připojení. A co hůř v pátek večer kolem 10té hodiny dostáváme hlášku, že aktualizace nemohla proběhnout na straně service z důvodu překročení horního limitu paměti. Problém je s vykreslováním kumulovaného grafu za posledních 5 hodin. Narazili jsme zde na nezdokumentovaný limit. Report s importem dat měl velikost pouhých 300 MB a 3 dny dat (Black Friday letos, loni a 2 roky zpět). Nicméně data v DAX dotazu přesáhla maximální velikost dat povolenou na straně service. Takže plán d byl nakonec potřeba a vyřešili jsme to dočasně smazáním onoho grafu. Evidentně můj DAX dotaz nebyl dostatečně efektivní :) Na ladění ve středu nějak nebyl čas. Konečně onen den končí. Ustáli jsme největší špičku. Na backendu spousta práce, ale uživatelé se dostali k informacím, ke kterým potřebovali a na frontendu snad nepoznali moc rozdíl.
26.11. přesun zpátky do Brna vyloženě v „Power BI náladě“. V týdnu přede mnou tři Power BI prezentace :) WUG Online, přednáška na konferenci iLikeSharePoint a SQL Saturday v Praze. Nejlepší ze všeho téma na SQL Saturday Praha – Power BI after more than year in production. A co tam jako teď budu vykládat?
V ten den kdy jsme Power BI nejvíce potřebovali se pokazilo skutečně co mohlo, což jsme dali vědět i produktovému týmu. Na naší straně v tu chvíli nepanovala velká důvěra, že si můžeme dovolit riskovat používat tuto technologii dál. Šéfová napsala manažerovi týmu, se kterým minulý rok na Data Insights Summitu v Seattle prezentovala naše řešení z loňska jak se cítíme s ohledem na používání Power BI do budoucna. Zorganizoval se call kde se probrala situace, Power BI team měl viditelně jasný cíl vyřešit náš společný problém a pracovali opravdu velmi tvrdě a intenzivně na řešení včetně callu v šílené časy, aby se s námi spojili (velký časový posun). Dokonce k nám poslali i jednoho člověka z produktového týmu do kanceláře, aby s námi řešil problém onsite.
Všechno to byla jedna velká a zajímavá zkušenost, ladit funkci brány přímo s produktovým týmem. Dozvěděl jsem se mnohé o tom jak gateway funguje stejně jako service na druhé straně. Mé obavy o tom, že kód ze strany Microsoftu je generován tak často, že prakticky znamožňuje pořádné testování u zákazníka byly trochu uklidněny. Dozvěděl jsem se také pár bodů o tom jak funguje release cyklus. Pokud tedy máte stejnou obavu jako já, vězte že změny jsou napřed nasazovány do Microsoft interního tenantu, kde jsou asi týden. Microsoft testuje nástroje prvně interně a věřím, že když dashboard nejede a stěžuje si Satya Nadela, tak takové eskalace nejsou příjemné :) Poté změny jsou nasazeny do regionů v US a teprve po nějaké době to upečou až k nám do regionu North Europe. Takže kód je testovaný docela zeširoka, než se to dostane až k nám. Testování nových verzí na straně zákazníka je však druhá věc.
V průběhu ladění jsme zkoušeli všechno možné, privátní buildy gateway, podrobnější logování dokonce i nový tenant v UK. Bez konzistentního úspěchu.
Minulé úterý 6.12 přišla v průběhu ladění spásná myšlenka. Zkusit na bráně změnit komunikaci z TCP na HTTPS. Výchozí mód komunikace brány je tzv. AutoDetect. Začne na TCP a pokud se 10 minut nedobouchá, přepíná sám na https. U nás byl však problém, že některé dotazy prošly, ale ne všechny, takže k přepnutí na HTTPS nedošlo vůbec. Po přepnutí na HTTPS brána začala konzistentně fungovat. HTTPS jede, přepneme zpátky na AutoDetect, nejede, přepneme na HTTPS jede, AutoDetect nejede, HTTPS jede. Tento test v průběhu 15 minut mluvil jasně. HTTPS vynucení rozchodilo naši gateway. A fungovalo to celý týden v kuse. Tak jsem začal psát tento blog, že máme konečně rozuzlení zápletky. Fungovalo to až do pondělka 12.12. No mě už z toho asi... Cca 24 hodin to nefungovalo včera v průběhu ladění po restartu service po konfigurační změně opět jede. Otázka je, jestli pojede. Další velká špička (Boxing Day 26.12 před námi) a to bude většina manažerů pracovat z domu, takže Power BI.
Závěr

Jak je na mě vidět nejen z mého blogu vidět, já mám Power BI docela rád :) Nicméně to co se děje v posledních 3 týdnech způsobuje, že nejsem v úplné Power BI náladě, jestli mi rozumíte :) Produkt je to dobrý, vypadá to dobře, dostupnost odkudkoliv, relativně cenově dostupné, rychle přibývající funkce, komunita... to všechno hovoří pro. Ono tempo vývoje je ale dvousečné. Někdo provede nějakou změnu na straně service a vy o tom ani nevíte, natož jestli to mohlo způsobit váš problém. Obráceně máte dlouho problém a ten časem vyšumí a vy opět nevíte, jestli někdo něco změnil. Dalo by se trochu paušalizovat, že jak do svých nástrojů přidáte nějakou cloudovou službu, tak nemáte plnou kontrolu... Jasně v principu by to mělo fungovat, ale... Byť naše telenovela pokračuje, velmi si cením podpory ze strany produktového týmu vyřešit náš problém. Doufám, že se tak s konečnou platností podaří co nejdříve. Už tak se nám podařilo společnými silami vylepšit produkt (odhalili jsme cestou několik bugů, které sice nezpůsobovali náš problém, ale byly tam). Možná je problém někde v naší síti, nebo někde na půli cesty. No uvidíme. Hlavní lekce pro všechny. Pokud je pro vás aplikace kritická, mějte plán B a to i v případě, že využíváte cloudovou službu. A ta by přece měla fungovat. PS: Až to bude fungovat a zjistíme, čím to bylo. Dám update.