Data Day Ing. Martin Haman. MCSA: BI Reporting, MOS Master, MCAS Master, MCP, MPS, ECDL.

Podobné dokumenty
Ing. Martin Haman MOS Master, MCAS Master, MCP, MPS, GPT, ECDL.

Vizualizace v Power BI

Power BI Desktop performance tunning

Stručný obsah. K2118.indd :15:27

Wonderware Information Server 4.0 Co je nového

Power BI Desktop. Ing. Martin Haman. MCSA: BI Reporting, MOS Master, MCAS Master, MCP, MPS, ECDL

Excel a externí data KAPITOLA 2

KOMPONENTY APLIKACE TreeINFO. Petr Štos ECM Business Consultant

Business Intelligence

Informační systémy 2006/2007

Instalace SQL 2008 R2 na Windows 7 (64bit)

Vzorce. StatSoft. Vzorce. Kde všude se dá zadat vzorec

Analýza a modelování dat. Přednáška 8

Kontingenční tabulky v MS Excel 2010

Efektivní práce s Excelem (středně pokročilí uživatelé)

Analýza a modelování dat. Přednáška 9

Nintex Workflow 2007 je nutné instalovat na Microsoft Windows Server 2003 nebo 2008.

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Analýza a prezentace dat

Předmluva 11 Typografická konvence použitá v knize Úvod do Excelu

PowerPivot pro Microsoft Excel 2013

Tabulkový procesor. Základní rysy

Bc. David Gešvindr MSP MCSA MCTS MCITP MCPD

Diagnostika webových aplikací v Azure

Databáze MS-Access. Obsah. Co je to databáze? Doc. Ing. Radim Farana, CSc. Ing. Jolana Škutová

Možnosti reportingu v produktech řady EPM

Vzdálená správa v cloudu až pro 250 počítačů

MBI - technologická realizace modelu

Praktické využití Windows Server 2012 Essentials ve firmě. Jan Pilař, MVP

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý

Novinky. Autodesk Vault helpdesk.graitec.cz,

Služby Microsoft Office 365

Tomáš Kantůrek. IT Evangelist, Microsoft

Statistica Enterprise

Obsah SLEDOVÁNÍ PRÁCE... 4

ANALYSIS SERVICES PROJEKT VYTVOŘENÍ PROJEKTU A DATOVÉ KOSTKY

GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY CVIČENÍ 4

Pracovní sešit MS Word pokročilý

Prozkoumání příkazů na pásu karet Každá karta na pásu karet obsahuje skupiny a každá skupina obsahuje sadu souvisejících příkazů.

StatSoft Jak vyzrát na datum

Systém eprojekty Příručka uživatele

ArcGIS Online Subscription

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

Instalace Microsoft SQL serveru 2012 Express

MIS. Manažerský informační systém. pro. Ekonomický informační systém EIS JASU CS. Dodavatel: MÚZO Praha s.r.o. Politických vězňů Praha 1

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Úvod 9

Digitální kartografie 8

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Přehledy pro Tabulky Hlavním smyslem této nové agendy je jednoduché řazení, filtrování a seskupování dle libovolných sloupců.

1. SYSTÉMOVÉ POŽADAVKY / DOPORUČENÁ KONFIGURACE HW A SW Databázový server Webový server Stanice pro servisní modul...

Příprava dat v softwaru Statistica

1 Tabulky Příklad 3 Access 2010

Popis programu EnicomD

Po prvním spuštění Chrome Vás prohlížeč vyzve, aby jste zadali své přihlašovací údaje do účtu Google. Proč to udělat? Máte několik výhod:

Strom funkcí Lenovo Solution Center: Systémové nástroje (System)

Kurz Databáze. Prezentace dat. Obsah. Tiskové sestavy (Report) Ing. Jolana Škutová

Import a export dat EU peníze středním školám Didaktický učební materiál

Operátory ROLLUP a CUBE

Název materiálu: Open Office

RELAČNÍ DATABÁZE ACCESS

Slučování tabulek. Sloučení dvou tabulek

Monitoring SQL Server, Resource Governor, Tracing SQL Server

Obsah. Úvod 15. Úvod do Excelu Práce se sešity 35

Možnosti tisku v MarushkaDesignu

xrays optimalizační nástroj

Inthouse Systems s.r.o. Specifikace. Inthouse App a Inthouse Studio pro Siemens Climatix 6XX. Verze software 1.X. Revize dokumentu 6

MS Excel 2007 Kontingenční tabulky

RadioBase 3 Databázový subsystém pro správu dat vysílačů plošného pokrytí

NÁVOD K POUŽITÍ. IP kamerový systém.

Novinky. Autodesk Vault helpdesk.graitec.cz,

Administrace služby - GTS Network Storage

INSTALACE DATABÁZE ORACLE A SYSTÉMU ABRA NA OS WINDOWS

Marketingová komunikace. 3. soustředění. Mgr. Pavel Vávra Kombinované studium Skupina N9KMK3PH (vm3bph)

<Insert Picture Here> Na co se můžete s Oracle BI těšit

Srovnání SQL serverů. Škálovatelnost a výkon. Express Workgroup Standard Enterprise Poznámky. Počet CPU bez limitu Obsahuje podporu

OBSAH. Word. První spuštění a hlavní obrazovka Wordu 3 Základní nastavení Wordu 6 Kontrola pravopisu a mluvnice 8 Nastavení ukládání dokumentu 12

Jak zálohovat DVD video

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

KAPITOLA 11 - POKROČILÁ PRÁCE S TABULKOVÝM PROCESOREM

OBSAH. 1. Úvod Požadavky na SW vybavení... 3

Vektorové dlaždice. a jejich využití pro vizualizaci dat katastru nemovitostí. Filip Zavadil, Cleerio s.r.o

BALISTICKÝ MĚŘICÍ SYSTÉM

Marek Laurenčík. Excel. práce s databázemi a kontingenčními tabulkami

InnoDB transakce, cizí klíče, neumí fulltext (a nebo už ano?) CSV v textovém souboru ve formátu hodnot oddělených čárkou

Začínáme pracovat s tabulkovým procesorem MS Excel

45 Plánovací kalendář

TECHNICKÁ SPECIFIKACE PŘEDMĚTU PLNĚNÍ

Návod pro práci s SPSS

Tvorba PDF Práce s Adobe Acrobatem

Dotazy tvorba nových polí (vypočítané pole)

Microsoft Visio 2013 vypadá jinak než ve starších verzích, proto jsme vytvořili tuto příručku, která vám pomůže se s ním rychle seznámit.

Infor Performance management. Jakub Urbášek

EXCELentní tipy a triky pro mírně pokročilé. Martina Litschmannová

Základní informace: vysoce komfortnímu prostředí je možné se systémem CP Recorder efektivně pracovat prakticky okamžitě po krátké zaškolení.

Uživatelský manuál WEB SERVICE V3.0 IP kamer Dahua

tohoto systému. Můžeme propojit Mathcad s dalšími aplikacemi, jako je Excel, MATLAB, Axum, nebo dokumenty jedné aplikace navzájem.

Databázový systém označuje soubor programových prostředků, které umožňují přístup k datům uloženým v databázi.

NÁVOD K POUŽITÍ. IP kamerový systém.

Počítačové kurzy buildit

Uživatelský manuál. Format Convert V3.1

Transkript:

Data Day 2018 Ing. Martin Haman MCSA: BI Reporting, MOS Master, MCAS Master, MCP, MPS, ECDL Martin.Haman@gmail.com www.linkedin.com/in/martinhaman

Pozice Power BI na trhu 2018 2

Zjednodušené schéma Power BI 3

Query okno základní operace Ovládněte data

Query okno Jedná se o velmi povedený nástroj na dolování dat 5

Pamatovat Query je case-sensitive! Column1 není to samé jako column1 Striktně odděluje datový typ číslo a text, proto nemůžeme použít např. Text.Start() na číselný sloupec a naopak Pozor na datový typ Any Pozor na regionální nastavení zdroj vs. PBID (Zdroj český web, region US) 6

Základní operace Mezi jednodušší operace patří určitě očišťovací operace, rozdělování a spojování dat či změny datového typu 7

Základní operace Práce s připravenými funkcemi a podmíněnými sloupci patří opět mezi intuitivní volby 8

Unpivot Česky řečeno převede sloupce na řádky Např. máme data za 12 měsíců ve sloupcích a rádi by jsme vše v jednom sloupci 9

Tvorba vlastní funkce Automatizace procházení a načítání zdrojů Výsledné chování bude něco jako cykly ve VBA 10

Group By Přijdeme o možnost rozpadu na detail, ale někdy se může hodit 11

Merge Připravený merge aplikací žluté sloupce Takzvaně ručně můžeme merge udělat přes nabídku na ribbonu 12

Append V případě stejné struktury, ale více souborů lze využít append možnosti na vytvoření jednoho dotazu 13

Preview Demonstrace toho, že data fyzicky nestahuje, ale pouze se podívá do zdroje Dokud nedáme aktualizaci, tak ukazuje klidně 50 dní staré data 14

Data source settings Pokud pošleme soubor mimo počítač, kde byl vytvořen, tak nebude fungovat zobrazení dotazů Na soubory nedohlédne 15

Data source settings - permission V případě on-line zdrojů dat (SharePoint, Dynamics 365 ) sice na data může dohlédnout, ale potřebuje oprávnění Oprávnění jsou ukládané lokálně do User.zip 16

DAX jazyk Evoluce Excel funkcí

DAX jazyk DAX obsahuje více než 200 funkcí, konstant a operátorů Původně vznikl pro Power Pivot v Excelu a SQL Server Analysis Services Lze ho využívat v Excel Power Pivot datovém modelu Dále jazyk můžeme využívat v Power BI Desktop (Plně kompatibilní s Excel 2016 PP) Konečně ho najdeme i v Analytických službách SQL Pro lepší přehlednost psaní funkcí doporučuji DAX Studio 18

DAX vs. Excel funkce Na první pohled vypadají podobně, oba mají syntaxi =NazevFunkce(Arg.1;Arg.2; ) Excelové vzorce pracují s rozsahy buněk DAX pracuje s tabulkami a sloupci tabulek za využití filtrů DAX na detailní úrovni jedině v okně PowerPivot DAX na sumarizované úrovni v PP i v Excelu (podobně jako kalkulované pole v KT) Intelisense pomáhá a našeptává (jako v Excelu) 19

DAX Počítané sloupce vs. Měřítka Než se pustíme do zběsilé tvorby DAX je důležité si ujasnit: Počítané sloupce (Calculated columns) tzv. výpočty na detailní úrovni jsou uloženy v databázi V případě velkých FACT tabulek sežerou hodně RAM Mají smysl jen pro využití ve filtrech Nahrazujeme X funkcemi (Measures) Měřítka (Measures) Počítány při agregování hodnot v okamžiku daného dotazu Nevyužívají RAM, ale procesorový výkon 20

DAX vs. Power Query M funkce Opět vypadají podobně, oba začínají = DAX i M pracuje s tabulkami a sloupci tabulek DAX i M využívají desítky podobných funkcí Je výhodné co nejvíce operací udělat přes PQ (např. sloučení, rozdělení, doplnění) DAX neumí některé operace (unpivot, atd.) Power Query neumí míry (jen Group By) V Power Query není Intelisense a je case sensitive! 21

Row kontext vs. Filtr kontext Existují dva kontexty (+ kombinovaný): Row kontext Filtr kontext V případě použití míry v počítaném sloupci se zapojí obojí Row context v podstatě se uplatňuje při tvorbě jakéhokoliv počítaného sloupce, ale i míry která je aplikována na daný sloupec Vše je řešeno na tzv. detailní úrovni Typickým příkladem můžou být funkce: Related, Left, Right, Concatenate, 22

Row kontext vs. Filtr kontext Filtr kontext uvidíme nejlépe v Pivotce, když do Values vložíme vytvořené měřítko, např.: [Prodeje]:=SUMX(TabProdeje;TabProdeje[PocetKs]*TabProdeje[CenaZaKs]) Bez použití Rows, Columns, Filters nebo Sliceru bude k dispozici jedna hodnota, kterou jsme požadovali Uplatňuje se, když je aplikován jeden nebo více filtrů k dosažení výsledku, např. ve vizualizacích jako jsou grafy (prodeje za zákazníky atd.) Row + Filter kontext můžeme vidět např. u X funkcí První je počítáno řádkově a po té je aplikována agregační funkce, kterou můžou ovlivňovat filtry 23

Rychlé measures (pouze v PBID) V případě, že nechceme dojít moc do styku s DAX, lze využít na některé výpočty tzv. rychlé měřítka Pravým tlačítkem na číselný sloupec a poslední položka 24

DAX Calculated columns Slučování textů podobně jako v klasickém Excelu např. sloučení celého jména přes CONCATENATE Dohledání sloupců z jiných tabulek např. funkce RELATED Ošetřování výjimek 25

DAX Measures Porovnání plán vs. skutečnost Možnost vyjádření jako KPI indikátor KPI (Key Performance Indicator) = ukazatel výkonnosti Typicky porovnává skutečnou hodnotu s hodnotou požadovanou Status se dá vyjádřit podobně i graficky, něco jako podmíněný formát 26

Zápis Calculated column vs. Measure Počítaný sloupec: Prodeje[Celkem] = Prodeje[CelkemBezDPH] + Prodeje[DPH] Míra umístěná do tabulky Prodeje: [Celkem]:=SUM(Prodeje[CelkemBezDPH])+SUM(Prodeje[DPH]) Pozn.: Míry mají oblast působnosti celý model 27

Odkazování Column reference: Table[Column Name] Measure reference: [Measure Name] 28

Prázdné hodnoty Prázdné hodnoty jsou vyhodnocovány jako 0 při sumarizaci nebo násobení Jsou však vyhodnoceny jako chyba, když jsou součástí dělení (řešení viz. DIVIDE) nebo logických výrazů BLANK() nahrazuje "" ISERROR(vypočet) v kombinaci s IF( ) IFERROR(výpočet; výpočet v případě chyby) 29

Operace a operátory Matematické operace + - * / ^ Operátory > >= < <= <> = 12 + 22 = 34 "12" + 22 = 34 "12" + "22" = 34 "12" & 22 = 1222 12 & 22 = 1222 30

Pozor na zápisy funkcí Špatně: FactInternetSales[SalesAmount]- FactSalesQuota[SalesAmountQuota] Dobře: SUM(FactInternetSales[SalesAmount])- SUM(FactSalesQuota[SalesAmountQuota]) Funkce SUM agreguje všechny řádky v aktuálním filtru kontingenční tabulky nebo datovém modelu 31

DAX SUMA SUM klasická SUMA =SUM(FactInternetSales[SalesAmount]) SUM nezávislá na agregacích kontingenční tab. =CALCULATE(SUM([SalesAmount]);ALL(FactInternetSales)) SUMX SUMA s početní operací v rámci tabulky =SUMX(Orders; Orders[Quantity]*Orders[Price]) SUMX lze kombinovat s funkcí FILTER SUMX(FILTER(Orders; Orders[Price]>10); Orders[Quantity]*Orders[Price]) 32

Vizualizace v Power BI Žhavý reporting

Správná vizualizace výsledků může být věda

Power View Interaktivní reporty přímo v Excelu Jedná se o jedinou možnost zpracování binárního datového typu v Power BI

Power View Složku s obrázky načteme v Excelu přes Power Query (Data\ Nový dotaz\ Ze souboru\ Ze složky) Provedeme filtrování a odstranění nepotřebných sloupců Načteme přímo do datového modelu Power Pivot V PP na kartě Advanced použijeme Table Behavior Nadefinujeme identifikátor řádku, popisky a výchozí obrázek Spustíme Power View a vyzkoušíme přidání obrázků

Power View PRO: Tvoříme přímo na listu v Excelu Jednotlivé vizuály na sebe reagují Zpracování obrázků a použitelné mapové vizualizace PROTI: Musíme znát alespoň Power Pivot Nelze upravit interakce Musíme mít my i příjemce správnou verzi Excelu Celkově málo propracované (úmyslně?)

Power Map = 3D Map Velmi přesné a vícevrstvé vykreslení dat v mapách

Power Map Tepová frekvence jako HEAT a nadmořská výška (odlišena barvou)

Custom Power Map Vlastní obrázky a X, Y souřadnice umožní téměř cokoliv

Custom Power Map Například zobrazit tepelné vyzařování budov

Power Map = 3D Map PRO: Naprosto perfektní vizualizace v mapách (včetně KML) Oproti mapovému řešení přímo v Excelu (Maps a Bing Maps) je PM daleko lépe zpracovaná Zabírá nesrovnatelně méně místa (cca 0,5MB oproti cca 8MB) Možnost tvorby videa PROTI: Stejně jako u PV musíme mít vhodnou verzi Excelu Mapa je "schovaná" Bing maps (okres Most)?

Power BI Desktop Vizualizace můžeme rozdělit na: Vestavěné (cca 30) Vlastní (cca 140) Dále pak na: Statické Dynamické R vizuály 43

Power BI Desktop Samotnou kapitolou je publikování: Power BI Services Report Server Do Office aplikací (přes Services) 44

Power BI Desktop

Pokročilé vlastní vizuály v PBID http://synoptic.design/ Vložíme obrázek, např. osobní automobil Nadefinujeme a pojmenujeme oblasti 46

Pokročilé vlastní vizuály v PBID Následuje export jako Název.svg pro využití v Power BI Desktop v kombinaci s vlastním vizuálem SynopticPanelBySQLBI.pbiviz (není součástí aplikace!) 47

Pokročilé vlastní vizuály v PBID Vizualizace nad vlastním obrázkem je hotová 48

Power BI Desktop PRO: Zdarma Alternativa k Power nástrojům v Excelu Libovolné vizualizace (store + komunita + vlastní vývoj) Možno používat on-premise díky Power BI Report Server PROTI: V případě sdílení potřebujeme Office 365 licenci + Power BI PRO Strach z "neznámé" aplikace

Skriptované vizuály v PBID Využívá se R jazyka První je však třeba nainstalovat (není součástí PBID aplikace) http://mirrors.nic.cz/r/ Rozšiřující informace o R také na české verzi projektu http://www.r-project.cz/

Využití již hotových skriptovaných vizuálů Poměrně bouřlivě se vyvíjí v rámci komunity http://community.powerbi.com/t5/r-script-showcase/bd-p/rvisuals 51

Skriptované vizuály Vybereme některý z nachystaných R scriptů např. Data Smoothing with Splines Následuje možnost stažení všeho potřebného (komunitní web) 52

Jazyk R - skriptované vizuály Oficiální, Microsoftem schválené R vizuály, máme k dispozici na webu: https://store.office.com/ sekce Power BI, ale na první pohled lze hůře poznat co je 53

Skriptované vizuály Pokud bude spouštěný PBIX soubor obsahovat nějaké skriptované vizuály, je možné je zkontrolovat 54

Skriptované vizuály PRO: Relativně snadnější pro tvorbu nových nebo úpravu již existujících vizuálů Pravděpodobně více možností PROTI: Max 150 tis. řádků zdroje Vizuály se dají ovlivnit jinými vizuály, ale samy nemůžou ovlivňovat Některé se nezobrazí na webu

Cortana Mít udělaný report pro Cortanu Nadefinovat Q&A Povolit její přístup v Power BI Services pro daný dataset Test Cortany: https://app.powerbi.com/cortana/test Windows 10 EN verze 1511 nebo vyšší Povolit Cortanu Aktivovat: Hey Cortana

Q&A Q&A mohou být předdefinované v rámci jednotlivých reportů (v PBID aplikaci najdeme v nastavení stránek reportů) V Power BI Services pro konkrétní Dashboard tvoříme psaním dotazů Například: Show average Sales by Country for A, B, C

Q&A Nově je možno využívat i v Power BI Desktop Jsou k dispozici angličtina a španělština

Streamované vizuály Na existujícím Dashboardu vybereme možnost přidat dlaždici Ve spodní části je vlastní streamovaná data Na výběr je API nebo PUBNUB 59

Streamované vizuály Po vybrání PUBNUB se nás zeptají na zdroj dat Buď vybereme z již nadefinovaných nebo + Přidat streamovanou datovou sadu 60

Streamované vizuály Při přidávání nové datové sady musíme vědět 1. Klíč, například: sub-c-5f1b7c8e-fbee-11e3-aa40-02ee2ddab7fe 2. Název kanálu, například: pubnub-sensor-network Více viz.: https://www.pubnub.com/developers/realtime-data-streams/sensor-network/ Další free stream data: https://www.pubnub.com/developers/realtime-data-streams/ 61

Streamované vizuály Raději vše ještě jednou na obrázcích: 62

Streamované vizuály Právě jsme nadefinovali novou datovou sadu, ale vizuály ještě nemáme Znovu vybereme možnost přidat dlaždici na Dashboardu a tentokráte vybereme existující datovou sadu... 63

Optimalizace datového modelu Menší a rychlejší

Je to pomalé 16BG RAM + SSD disk a stále problém? Máme řešení

Data load settings Některé volby můžou pomoct (import relationships) Některé můžou komplikovat život Obecně platí čím méně, tím lépe 66

Parallel loading Chybové hlášení neodpovídá realitě a za základě chyby v jedné tabulce ukončí načítání ostatních Řešením je vypnutí paralelního načítání tabulek (bude nepatrně pomalejší), ale povede se! 67

Auto Date/Time Pokud máme hodně tabulek a v nich se objevují datumové sloupce, tak lze urychlit načítání a aktualizace dat vypnutím Auto Date/Time Je dobré mít v modelu vlastní kalendář pro DAX časové fce. 68

Auto Date/Time S vypnutím volby hrozí, že nebudou fungovat některé DAX výpočty, protože zmizí datumové hierarchie na pozadí! 69

Autodetect new relationships Může způsobit naprostý chaos Kolikrát se stává, že neaktivní relace může být OK Je nutná pořádná kontrola modelu Ideální je mít vypnuto 70

Automatically detect column types Automatická detekce je uplatňovaná ještě v Query okně Způsobuje automatický odhad datového typu sloupců zdroje na základě analýzy prvních 200 řádků Může zapříčinit vypnutí query folding! 71

Allow data preview to download in the background Možnost vypnutí této funkce byla dodatečně přidána vývojovým týmem Vypnutí výrazně redukuje množství dat, které je nutné zpracovat a ušetří RAM a procesor Její potenciál odhalíme při načítání velkého množství dat 72

Hide the visual header in reading view Pokud nechceme, aby někdo maximalizoval, drilloval po publikování na web, tak máme k dispozici volbu File\ Options and settings\ Options\ Report Settings 73

Disabling cross highlighting/filtering Máte desítky vizuálů na stránce a načítání je pomalé? Není potřeba, aby se navzájem ovlivňovaly? Je možné vypnout v File\ Options and settings\ Options\ Query Reduction 74

Combine Pokud se někde objeví Combine tak popřemýšlejte, zda neudělat jinak Plánovaná aktualizace reportu v Office 365 se neprokouše skrz takto vytvořenou funkci atd. 75

žluté sloupce Někdy si nelze nevšimnout žlutých sloupců na konci dotazů (value strana 1, table strana N) Vlastně se jedná o nachystané joiny (drží v RAM) Při větším množství umí opět velmi zpomalovat 76

žluté sloupce Expandování sloupce v SQL zápisu 77

Query folding Samotné optimalizační triky v podobě data load settings nemusejí stačit Lepší je dělat transformace přímo ve zdroji (na serveru) než je stahovat do cache (síťový provoz a zahlcení RAM) Query folding: Power BI > Power Query M Script > překlad do T-SQL > SQL Server Databáze Query folding částečný: Power BI > Power Query M Script > Cache Local > předklad některých operací do T-SQL > SQL Server Databáze 78

Query folding Query folding je ve výchozím nastavení zapnutý (v případě napojení na relační zdroj) Některé M operace nejsou podporovány při překladu do T-SQL, např.: Merge columns, které využívá funkce Text.Combine (klasika v podobě & funguje) Kombinování více zdrojů v rámci jednoho dotazu Proto je určitě lepší popřemýšlet nad postupem jednotlivých operací a nad provedením dané operace! 79

Native Query Zda daný krok ještě překládá nebo už ne poznáme pravým klikem na krok v Applied steps a musí být aktivní možnost View Native Query : 80

Native Query Ukázka konstrukce IF překládané do SQL (switch úplně dole) 81

Native Query Při tvorbě dotazů může při každé změně chtít oprávnění Vypnout se dá přes Options\ Security\ Require user approval 82

Jak na chyby? V průběhu načítání/aktualizace se může objevit dialog s chybou View errors ukáže číslo řádku s chybou Často problém s datovými typy v kombinaci s národním prostředím 83

Optimalizace obecně Pokud budeme bezmyšlenkovitě používat neomezený prostor datového modelu, tak můžeme na běžném kancelářském stroji rychle narazit na výkonnostní strop 84

Optimalizační tipy Data můžeme spravovat s menšími nároky na místo a výkon počítače, když se budeme držet: 1. 64 bit. Aplikace 2. Používat STAR schéma 3. Jednoznačný identifikátor řádku 4. Limitovat počet řádků a sloupců v tabulkách 5. Pozor na sloupce s vysokým počtem unikátních hodnot (datum a čas, desetinné čísla, ID) 6. Používat measures místo calculated columns (viz. dále) 7. Omezit počet slicerů v konkrétním souboru (při každém výběru musí model přepočítat vše) 8. Tvořit slicery jen nad DIM tabulkami (FACT mají desetinné) 9. Zakázat cross-filtering ve slicerech 85

Star vs. Snowflake model Hlavně Power Pivot nesnáší dobře velké mezitabulky 86

Star vs. Snowflake model V naší modelové databázi máte také tento problém, ale nad malým objemem dat! Kdybychom měli např. 3 tabulky: Kategorie (1000 řádků) => Podkategorie (20000 řádků) => Produkty (2000000 řádků) Když dáme v Pivotce slicer na Kategorie a použijeme data z tabulky Produkty, tak zapříčiníme pravděpodobně pád Excelu, v lepším případě neuvěřitelně nabobtná velikost souboru a vše bude velmi pomalé! Řešení 1 nepoužívat Snowflake schéma Řešení 2 RELATED (nebo PQ) dotáhne Kategorie do tabulky Produkty a slicer děláme jen nad jednou tabulkou 87

Jednoznačný identifikátor řádku Každá tabulka MUSÍ mít primární klíč nebo alespoň jedinečný identifikátor řádku v "Chování tabulky" Jinak jsme vystaveni problémům v případě použití measures nebo sloupců s Calculate (cyklická závislost) Funkce na obrázku řeší sumu všech řádků v tabulce, které mají stejné hodnoty ve všech sloupcích 88

Jednoznačný identifikátor řádku V PBID zatím tato volba chybí, ale lze nahradit upraveným zápisem druhé a další Calculate: CALCULATE(SUM(TabProdeje[Celkem]); ALLEXCEPT(TabProdeje;TabProdeje[PredchazejiciVypocetCalculate])) Aplikováním filtru nedojde k výběru sloupce s Calculate a tím se nezacyklíme 89

Omezení počtu řádků Máme sloupec ID, který obsahuje 100 milionů unikátních čísel >> ve VertiPaq cca 3GB Pokud však sloupec rozdělíme >> ve VertiPaq se dostaneme na cca 200MB rozdělení může být do dvou sloupců o 10000: Následuje složení: Fact[TransactionID]:=IFERROR(VALUES(Fact[TransactionHighID]) *10000 + VALUES(Fact[TransactionLowID]);BLANK()) 90

VertiPaq engine Datový model oficiálně využívá xvelocity in-memory Analysis Services Pracovním názvem byl však dlouhou dobu VertiPaq Interně je proto pořád vidět VertiPaq Ve skutečnosti dotazovací engine vykonává VertiPaq dotazy, ne xvelocity dotazy 91

VertiPaq engine DAX fungují v SS Analysis Services, Power BI (server i local) a v Power Pivot v1 (Excel 2010), PowerPivot v2 (Excel 2013 a 2016) Technicky je Power Pivot lokální instance SSAS Tabular v SSMS jsme schopni udělat back up databáze (databaze.abf) => lze přepsat na item.data Power Pivot je tedy SSAS, který běží přímo v Excelu Při načítání dat do paměti (load nebo refresh) se děje transformace na interní VertiPaq datovou strukturu 92

VertiPaq engine Postup při načítání dat (viz další snímky): 1. Čtení dat a transformace do sloupcové struktury VertiPaq, šifrování a komprese každého sloupce 2. Tvorba slovníků a indexů pro každý sloupec 3. Tvorba relací 4. Počítání a komprese všech počítaných sloupců Poslední dva kroky můžou být i v opačném pořadí (relace může být nad počítaným polem) (počítané pole může být závislé na relaci RELATED) 93

VertiPaq engine Čtení dat a transformace do sloupcové struktury 94

VertiPaq engine Pro jednotlivé sloupce z tabulky následuje tvorba slovníku jedinečných hodnot Tvorba jedinečných hodnot 95

VertiPaq engine Nahrazení jedinečných hodnot indexy Všechny sloupce tak budou číselně (integer) Indexy Slovníkové šifrování 96

VertiPaq engine Duplicitní výskyty indexů jsou následně seřazeny 4x Run Length Encoding - máme seřazeno a víme počty jednotlivých indexů => velmi zredukován počet hodnot 2x R.L.E. 3x 3x 97

VertiPaq engine Výsledné řešení je paměťově úspornější a rychleji prohledatelné (start sloupec není třeba) Vše závisí na poměru počtu hodnot a počtu unikátních hodnot 98

VertiPaq engine 1.obr má 4 unikátní členy (QTR), 2. má 7232 členů 99

VertiPaq engine v praxi 21MB Excel soubor v PBIX jen jako 160KB? Redukce může být opravdu znatelná 100

DAX vs. Query vrstva Na 100% lze doporučit nachystat vše přímo ve zdroji Pokud nelze => Query okno Jedná se o výkonově a paměťově méně náročnou variantu než DAX V Query okně je dobré přemýšlet nad použitými kroky DAX je výhodnější používat na measures, které v Query nenachystáme 101

DAX columns vs. DAX measures Vše k čemu by se mohly hodit počítané sloupce lze udělat v Query okně (např. spojování, rozdělování, výjimky, atd.) Počítané sloupce zaberou místo v RAM Measures nezaberou místo v RAM a minimálně na disku a dopočítají se až v případě zobrazení samotného zápisu nebo vizuálu, kde je přítomen výpočet Mezi POHODA 1.3. a 1.6 je rozdíl cca 200 measures 102

Relace a směr křížového filtru Relace v PBID mají možnost upravit směr filtru Křížový filtr může být jednosměrný nebo obousměrný (odkud kam dosáhneme na data) 103

Směr křížového filtru - Single CPStrav (finance) > CP (událost) > CPVydaje (jízdenky, atd.) 104

Směr křížového filtru - Both CPStrav (finance) > CP (událost) > CPVydaje (jízdenky, atd.) 105

Testování výkonu v DaxStudio První spustíme Query Plan, následně Server Timings Následuje tvorba výrazu a Run tlačítko 106

Testování výkonu v DaxStudio Legenda k výsledkům: Rows počet řádků ve zdroji 5.167.402 KB využitá RAM 565.185 KB Total = FE+SE celkový čas načtení dotazu FE Formula engine (vyhodnocení výpočtu) SE = Duration Storage engine (uložení dotazu) SE CPU jak dlouho trvalo uložení dotazu SE Queries počet dotazů SE Cache uložení do RAM 107

Testování výkonu v DaxStudio SE Queries = 9 dotazů ; SE Cache = 7 dotazů 108

Testování výkonu v DaxStudio Fyzický query plán má 77 řádků (summarize je velmi náročná) 109

Testování výkonu v tabulce s >5M rows Cca 10MB na 100000 řádků 110

Optimalizace je základ Optimalizujte nebo nakupte silnější stroje a více RAM! 111

Power BI Report Server On-premises řešení

Jak získám Power BI Report Server? Pořídit Power BI Report Server můžeme pouze: Se službou Power BI Premium od licence P1 a výše S SQL Server Enterprise se software assurance

Instalace Instalace je velmi jednoduchá a rychlá https://powerbi.microsoft.com/en-us/report-server/ Prerekvizitou je SQL Server s database engine K serveru dostaneme i PBIDesktopRS_x64.msi Zbytek lze instalovat až následně Power BI Mobile Mobile Report Publisher Report Builder

Konfigurace Report Serveru Po instalaci Report Serveru projdeme konfiguraci Power BI Service\ Register with Power BI

Konfigurace Report Serveru My settings pouze napojení na Office 365 My subscriptions souvisí s paginated reporty Site settings branding, schedules a security Info o nadstavbě v podobě Office Online serveru https://docs.microsoft.com/cs-cz/power-bi/report-server/excel-oos Info o podpoře jednotlivých verzí serveru na https://docs.microsoft.com/en-us/power-bi/report-server/support-timeline

Migrace ze SSRS nebo jiného Power BI RS Podpora prohlížečů: Obecně IE11, Edge, Chrome, Firefox, Safari https://docs.microsoft.com/cs-cz/power-bi/report-server/browser-support Perfektní návod na migraci včetně ukázkových scriptů najdeme na: https://docs.microsoft.com/cs-cz/power-bi/report-server/migrate-report-server

Branding Report Server je možné graficky upravit tzv. na míru

Branding Jedná se o ZIP balíček, který obsahuje 3 soubory

Datasources Minimálně pro Paginated reporty a KPI je dobré mít definované datové zdroje a po té datasety

Datasets Ve správě datasetu vidíme datový zdroj a také závislosti jednotlivých reportů na daných datech

KPI Tvorba KPI je velmi jednoduchá Můžeme použít manuální definici např. s odkazem Případně s využitím datasetu

KPI Dataset využijeme hlavně na Value, Goal a Trend

Power BI Desktop RS

Power BI Desktop RS Pro tvorbu reportů pro RS potřebujeme správnou verzi PBID

Data sources a scheduled refresh Rozlišujme import vs. DirectQuery V případě živého připojení se aktualizuje automaticky

Data sources a scheduled refresh Pokud máme volbu import, tak první zkontrolujeme zdroj a po té můžeme plánovat aktualizace

Editace plánovaných aktualizací Je možná libovolná aktualizace Klidně i každých 5 minut Další možností je začátek a konec aktualizací

Přehled plánovaných aktualizací Každý report může mít více automatických aktualizací K dispozici je i okamžitá aktualizace

Komentáře K libovolným reportům lze přidávat komentáře

SQL Server Mobile Report Publisher Mobile Reporty

Mobile Report Publisher Aplikace dříve známá jako Datazen (*.rsmobile) Nepotřebuje PRO licenci Slouží čistě na vizualizace nachystaných dat (nepodporuje vlastní a streamované vizualizace ani vizuály R scriptu) Nemá možnost úpravy zdrojových dat (tak jako Power BI Desktop v podobě Query) Má navíc layout pro tablet Nelze tisknout ani jakkoliv upravovat na serveru

Tři typy reportů Pouze mobilní reporty a KPI uvidíme hned

Mobile Report Publisher Pracovní prostředí aplikace a ukázka tvorby

Mobile Report Publisher Připojení k datům Design lze dělat ve třech úrovních Počítač Tablet Telefon

Mobile Report Publisher Datová karta s možnostmi aktualizace a agregace

Mobile Report Publisher Preview vypadá jako na webu, ale není interaktivní

Report Publisher vs. Power BI Řešení Mobile Report Publisher Power BI Proč? Pokud máme již existující Datazen obsah Firma nechce cloud-based řešení (PBID) Není nutná per-user licence Reporty a Dashboardy můžou být zpřístupněny a obsluhovány přes cloud a mobilní zařízení Pokud je povoleno self-service BI ve firmě

Report Publisher vs. Power BI Features Power BI Mobile Report Publisher Can connect to on-premises data sources, such as SQL Server and Analysis Services x x Can create custom layouts for tablets, mobile devices, and browsers x x Can adjust the number of grid rows and columns on a dashboard x Can be accessed through a browser x x Can be accessed through the Power BI mobile app x x Can design the report prior to obtaining data x Can leverage custom color themes x x Frequent product updates from Microsoft x Custom visualizations x Integrates with R x Can manipulate/transform data within the application x Can leverage live streaming data x Notifications and alerts when data changes x

SQL Server 2016 Report Builder Paginated Reporty

Report Builder Klasické řešení s novým názvem Paginated report Nepotřebuje Power BI PRO licenci Umožňuje tvorbu nad datasety v rámci Report Serveru V rámci serveru umí nejvíce

Report Builder - pracovní prostředí aplikace

Report Builder Publikovaný report včetně možností uložení a tisku

Připojení do Power BI Server je možno taktéž připojit do Power BI služby a uploadovat části (dlaždice) hotových Paginated reportů

Publikování do Power BI Samotné připojení nestačí. Je nutné nastavit credentials Datasource\ Manage\ Properties\ Credentials

Publikování do Power BI V následujícím kroku již vybíráme části reportu k publikování

Publikování do Power BI Na závěr vybereme Workspace a Dashboard

Publikování do Power BI Na dashboard se umístí s odkazem do zdroje

Subscriptions Ve správě u paginated reportů máme k dispozici automatické subskripce, které sypou data v požadovaném formátu do požadovaného umístění v libovolném časovém intervalu

Subscriptions V subscriptions najdeme i části reportů poslané do Power BI Nastavení pro odesílání souborů:

History snapshots U paginated reportů je možné mít pohledy do historie Lze i automatizovaně

Power BI Mobile Je možné být přihlášen jak do Office 365 účtu, tak i na Report Server

Power BI v GOPASu MSEXNL (za hranice Excelu) 2 dny proč Power nástroje? tvorba datového modelu v Power Pivot hierarchie počítané sloupce míry a KPI linkované tabulky klíčový doplněk Power Query

Power BI v GOPASu MSEXNL2 (za hranice Excelu 2) 2 dny optimalizace Power Pivot modelu parametrizace Power Query a Power Pivot pokročilé míry vychytávky v Power View Custom Power Map (3D Map) úvod do Power BI Desktop & Services Datamining

Power BI v GOPASu PBID (Power BI Desktop) 2 dny proč Power BI Desktop a rozdíly oproti Excelu tvorba modelu a dotazovací vrstva drilování, skupiny, hierarchie, atd. tvorba vizuálů sdílení a publikování dat RLS aneb uvidím jen co mám vidět Cortana, Q&A

Power BI v GOPASu DAXPP (DAX v Power Pivot) 1 den co je DAX a kdy se používá DAX dotazy počítané sloupce tabulkové funkce míry a variabilní DAX star vs. snowflake model vliv relací na výpočty

Power BI v GOPASu MOC školení (3 dny): 20778 - Analýza dat nástrojem a službou Power BI 20779 - Analýza dat nástrojem MS Excel Certifikace: 70-778 - Analyzing and Visualizing Data with MS Power BI 70-779 - Analyzing and Visualizing Data with MS Excel

Děkuji za pozornost. www.gopas.cz/powerbiday 158