Power BI Embedded - Wat, Hoe en Wanneer?
Zowel binnen als buiten de organisatie Power BI content delen zonder gebruik van licenties, maar hoe doe ik dat? Dankzij Power BI Embedded is het mogelijk om rapportages, dashboards en zelfs losse visualisaties naadloos te integreren in je applicatie of klantportaal. Door goed na te denken over het design bied je een optimale gebruikerservaring. Maar wat is dat Power BI Embedded nou precies? Hoe werkt het en wanneer zet ik het wel of niet in? Nieuwsgierig of dit de oplossing is voor jouw lang gekoesterde wens? Die oplossing is misschien wel dichterbij dan je denkt! Laten we eens zien.
Power BI Embedded toepassingen
De toepassingen van Power BI Embedded zijn divers, maar nagenoeg altijd gericht op een situatie waarbij de gebruikers van je Power BI rapportage niet in het bezit zijn van een Power BI Pro licentie. Vaak zullen het oplossingen betreffen die gericht zijn op klanten of leveranciers. In diverse branches is het bijzonder waardevol om je rapportages met bijvoorbeeld benchmarking, forecasting of andere trends te kunnen presenteren.
Concreet is Power BI Embedded bedoeld voor softwareontwikkelaars van applicaties en klantportalen, waarbij de laatste vermoedelijk het meest in het oog springt. Klanten loggen in op één omgeving waar zij alle benodigde functionaliteiten aangeboden krijgen. Eén van deze functionaliteiten betreft het kunnen raadplegen van rapportages met voor hen onmisbare informatie zoals cijfers over sales, responstijden, logistiek of misschien wel benchmarking ten opzichte van landelijke cijfers of een set aan gelijkende bedrijven. Naast de rapportages biedt een klantportaal de functionaliteit om bijvoorbeeld documenten te uploaden of de klantenservice te benaderen. Eén communicatiekanaal met al je klanten!
In veel gevallen zal Power BI Embedded worden ingezet voor mensen van buiten de organisatie. Toch zijn er ook toepassingen te bedenken waarbij het wordt inzet voor intern gebruik, zoals bijvoorbeeld in een extranet of in een maatwerk applicatie en waarbij medewerkers geen licentie hebben en zelfs niet hoeven in te loggen om een Power BI rapportage te kunnen raadplegen.
Hoe werkt Power BI Embedded?
Zonder al te veel in te gaan op de techniek neem ik je graag mee in een stukje achtergrond van de oplossing. Power BI Embedded wordt in tegenstelling tot alles rondom de Power BI Service (powerbi.com) niet ingesteld via de Office 365 omgeving, maar is terug te vinden in de Azure Portal (portal.azure.com). Power BI Embedded kan omschreven worden als een service. Op het moment dat de service is geconfigureerd staat deze garant voor een stukje capaciteit. Deze capaciteit is benodigd om Power BI rapportages te kunnen laden binnen de gekozen toepassing. Hoe meer interactie er met de rapportages is, hoe meer capaciteit benodigd. Een logisch gevolg.
Het aanroepen van Power BI rapportages binnen de oplossing is veilig. Er wordt gebruik gemaakt van de door Microsoft ontwikkelde Power BI API*, waarvoor expliciete authenticatie benodigd is. Bij de aanroep van de Power BI rapportages wordt de in de toepassing ingelogde gebruiker meegestuurd naar de Power BI rapportage, zodat de rapportage enkel de data presenteert waarvoor de ingelogde gebruiker geautoriseerd is.
Afhankelijk van het gebruik van de rapportages loop je na verloop van tijd mogelijk tegen de grenzen van de geconfigureerde capaciteit aan. Je zult de capaciteit moeten opschroeven, waardoor de kosten ook zullen toenemen. Gelukkig komt daar het grote voordeel van Azure naar boven. Met het gebruik van Power BI Embedded schaf je namelijk een schaalbare oplossing aan! Zodra de piek in het gebruik van je rapportages bekend is kun je geautomatiseerd de capaciteit laten opschalen naar een trede hoger. Neemt de activiteit van gebruikers af, dan kun je weer met minder capaciteit toe. Een mooie manier om de kosten te regulieren zonder dat het ten koste gaat van de gebruikerservaring. Het is zelfs mogelijk de gehele service te pauzeren wanneer er bijvoorbeeld geen nachtelijke bezoekers op de applicatie worden verwacht. Zodra de service is gepauzeerd worden er ook geen kosten in rekening gebracht.
Maar wat kost dat dan is een veelgehoorde vraag? Helaas is daar geen eenduidig antwoord op te geven. Gebruikers van Power BI Premium hebben al de beschikking over ‘capaciteit’ en kunnen zodoende dezelfde oplossing draaien zonder daar nog Power BI Embedded voor te hoeven aanschaffen. Wel gaat de gebruikte capaciteit vervolgens af van de Premium capaciteit welke waarschijnlijk ook voor interne oplossingen draait. Organisaties zonder Power BI Premium kunnen voor Power BI Embedded instappen op capaciteitsniveau A1. Wanneer de service vervolgens 24/7 wordt geactiveerd moet rekening gehouden worden met zo’n €640,- per maand aan kosten. Bij iedere trede omhoog (maximaal 6) geldt een verdubbeling van de kosten.
Maar wat krijg ik daar dan voor? Voor Power BI Embedded geldt dat wordt gerekend met een aantal vernieuwingen van een rapportpagina. Voor het capaciteitsniveau A1 uit bovenstaand voorbeeld geldt dat de service tot maximaal 300 vernieuwingen per uur de performance kan garanderen. Komt het aantal vernieuwingen hoger uit dan kunnen deze in een virtuele wachtrij terecht komen en kan de eindgebruiker een verminderde performance ervaren. In zo’n situatie zou je het liefste de service tijdelijk willen opschalen om je gebruikers de optimale ervaring te bieden. Er zijn dus veel knoppen om aan te draaien. Je begrijpt dat er over dit onderwerp een heel artikel geschreven kan worden. Omdat het niet het hoofdonderwerp van dit verhaal is, heb ik mijzelf dan ook voorgenomen dit binnenkort voor jullie verder uit te werken in een volgend blog om er zo nog meer gevoel bij te krijgen! Kortom, Stay tuned.
Voordelen van Power BI Embedded
Een hierboven al benoemd voordeel is de schaalbare oplossing die Power BI Embedded biedt. Dankzij het opschalen, afschalen en zelfs pauzeren van de service kan het optimale uit de service worden gehaald zonder het maximale te hoeven betalen.
Minstens zo’n belangrijk voordeel van het gebruik van deze oplossing is de mate van beheer. Al je gebruikers (klanten) maken gebruik van hetzelfde Power BI rapport, waarbij de data wordt gefilterd naar de ingelogde gebruiker. De ontwikkelaars van de rapportage hebben maar één rapportage te onderhouden en het vergt minimale configuratie binnen de toepassing waar de rapportages worden aangeboden. Doordat gebruikers van de oplossing niet specifiek toegevoegd hoeven te worden in het domein (Azure Active Directory) van de organisatie voorkom je vervuiling en hoeven gebruikers van de oplossing maar op één locatie te worden beheerd, namelijk in de oplossing zelf.
Implementatie van Power BI Embedded
De implementatie van Power BI Embedded kent vele aspecten. Allereerst is er de vraag of er al een (klant)portaal of andere applicatie is waarbinnen de Power BI rapportages aangeboden dienen te worden. Wanneer dat het geval is zal deze oplossing uitgebreid moeten worden met de nieuwe functionaliteit. Er zijn ook situaties waarbij er wel een idee is, maar nog geen concrete rapportage die men wil aanbieden. In andere gevallen is er wel een rapportage maar is deze nog onvoldoende geschikt om te kunnen delen, bijvoorbeeld omdat er nog geen gebruik wordt gemaakt van row level security*. Naast de toepassing waarbinnen de rapportage aangeboden moet worden en het rapport zelf, dient ook de Power BI Embedded geconfigureerd te worden. De implementatie kan in het meest complexe geval dan ook een samenspel zijn van tal van teams of zelfs externe partijen met specialisten. In het meest efficiënte scenario biedt één team met specialisten je een totaaloplossing. Toch is de oplossing doorgaans minder ingrijpend dan vooraf gedacht.
Naast de technische implementatie van de oplossing is het ook goed om stil te staan bij het proces rondom het opleveren van nieuwe functionaliteiten in je rapportages of andere onderdelen van het dataplatform. In de situatie dat bijvoorbeeld klanten rapportages raadplegen via een portaal wil je de mate van onderhoud, downtime en kans op onbedoelde fouten minimaliseren. Het is daarom belangrijk na te denken over het proces wat hier voor wordt ingericht. Ook het testen of gemaakte wijzigingen geen impact hebben op bijvoorbeeld de autorisaties binnen je rapport dienen geborgd te worden in een proces. Alles met als doel je gerealiseerde oplossing zo succesvol mogelijk te maken!
Conclusie
Het gebruik van Power BI Embedded is interessant voor het delen van Power BI rapportages in toepassingen als bijvoorbeeld een klantportaal. Het biedt de mogelijkheid Power BI rapportages naadloos te integreren met de look and feel van je applicatie, waarmee een optimale gebruikerservaring ontstaat. De implementatie omvat een sterk technisch component, als ook een stuk proces waarover nagedacht dient te worden. Afhankelijk van de gewenste functionaliteiten hoeft een implementatie geen weken te duren. De schaalbaarheid van de service maken het mogelijk te spelen met capaciteit en kosten. Power BI Embedded heeft zich bewezen als een krachtige oplossing voor het delen van Power BI rapportages met gebruikers zonder Power BI Pro licentie, zowel binnen als buiten de organisatie.
Demo
Bovenstaand schrijven komt grotendeels overeen met de sessie die ik heb mogen geven op de Power BI Gebruikersdag Online 2020 welke werd georganiseerd door de Power BI Gebruikersgroep. Onderdeel van deze sessie was tevens een demo van een klantportaal inclusief ingesloten Power BI rapportages met behulp van Power BI Embedded. Met deze demo heb ik de toepassing visueel gemaakt, om meer gevoel te krijgen bij de te realiseren oplossingen.
Het goede nieuws is dat de demo omgeving ook na deze sessie nog te bekijken is.
Vragen
Ik kan me voorstellen dat je aan de hand van deze blog of zelfs aan de hand van mijn sessie op de Power BI Gebruikersdag Online 2020 nog vragen, opmerkingen of suggesties hebt rondom het onderwerp Power BI Embedded. Ik kijk dan ook uit naar je reactie! Neemt contact met me op via LinkedIn of per e-mail op bob.woets@creates.nl.
* Power BI API – Een API (Application Programming Interface) is een communicatiekanaal van een applicatie voor andere applicaties. De Power BI API is het communicatiekanaal van de Power BI Service.
* Row level security – Row level security is de mogelijkheid tot het beperken van een Power BI dataset op basis van een gebruiker of rol. Data waar een gebruiker geen toegang toe heeft is hiermee onbereikbaar.