Kada dashboard oživi…

San svakog rukovodioca je da ima ispred sebe veliki ekran sa dashboard-om koji pruža informacije o (gotovo) svemu što se dešava u njegovoj kompaniji. A da li ovo može da radi u realnom vremenu? Da, i ova mogućnost postoji još od oktobra 2019. godine za sve Power BI Professional i Premium korisnike koji koriste DirectQuery radi punjenja Modela podataka. Od skoro su dostupni i neki noviteti koji ovaj proces čine još efikasnijim…

DirectQuery je jedan od načina na koji se Power BI povezuje sa izvorima (bazama) podataka. Ovom prilikom oni se ne uvoze ili kopiraju u Model podataka već se uspostavlja veza sa bazom, podaci se preuzimaju kada je potrebno i u meri kojoj je to potrebno. Samim tim, može se reći da korisnici koji posmatraju izveštaje kreirane primenom DirectQuery-ja uvek gledaju ažurne podatke.

Kako ovo funkcioniše u praksi? Najpre, prilikom pravljenja izveštaja, na podešavanjima svake stranice moguće je postaviti Automatic page refresh. Korisnici Power BI Professional pretplate mogu da imaju izveštaje koji se osvežavaju svakih 30 minuta, a Premium korisnici u osnovi dobijaju mogućnost osvežavanja svakih 5 minuta s tim što u je moguće u Admin panelu ovaj period dodatno umanjiti tako da period osvežavanja bude i kraći. Najkraći period osvežavanja je 1 sekunda.

Pored osnovnog načina za automatsko osvežavanje stranice od juna ove godine je uvedena i opcija Change Detection. Radi se o tome da je na nivou modela podataka moguće uvesti jednu meru koja prati promene u sistemu, odnosno vrši osvežavanje podataka svaki put kada se ostvari neki događaj. Na primer, ako neko u sistem doda novog partnera, ako dođe do prodajne transakcije i sl. Ovu opciju pokrećemo nakon što sa Modeling ribona izaberemo Change Detection. Otvoriće se prozor u kome najpre treba da izaberemo da li kreiramo novu promenljivu ili menjamo postojeću. Sa desne strane, u odeljku Fields, nalazi se lista svih raspoloživih izveštajnih dimenzija. Potrebno je samo prevući neku koju želimo da pratimo, npr. IDT (šifra transakcije), u polje Choose field to apply it to. Zatim u padajućoj listi Choose a calculation menjamo funkciju kojom se vrši agregacija. Ako npr. izaberemo Count (Distinct) sistem će detektovati promenu svaki put kada se promeni broj jedinstvenih transakcija ili, jednostavno govoreći, kada neko nešto proda. Na kraju samo treba još izabrati nakon kog perioda Power BI treba da proverava da li je došlo do promene ove mere. Ovo možemo da učinimo u podešavanju stranice kao i na Power BI Admin panelu.

Koliko efikasno sve ovo radi? Koliko su zauzeti resursi i koja je brzina prikaza izveštaja? Da bismo dobili odgovore na brojna pitanja potrebno je da pokrenemo Performance Analyzer. Ova opcija se nalazi u okviru View ribona, a kada je startujemo otvoriće se panel sa desne strane Power BI Desktop prozora. Da bismo videli promene treba kliknuti na dugme Start Recording. Dobićemo tabelu sa 2 kolone: Name i Duration. Prva označava upit, meru ili izveštaj a u drugoj se vidi period osvežavanja. Na osnovu ovih podataka možemo da analiziramo izveštaje i pokušamo da ih optimizujemo kako bi radili brže. Na sličan način možemo pratiti zauzetost kapaciteta pomoću Capacity metrics aplikacije koja radi u okviru Power BI servisa.