Als ontwikkelaar ben je continu bezig om rapporten in Power BI te verbeteren. Wijzigingen en vernieuwingen wil je zo snel en efficiënt mogelijk doorvoeren. Of terugzetten, als een wijziging niet goed uitpakt. Als je werkt vanuit een DevOps-aanpak krijgt je te maken met wat uitdagingen in Power BI. Wat zijn die uitdagingen en hoe kan je ze tackelen? Michiel de Boer, BI Consultant, loodst je er doorheen.
In de werkruimtes van Power BI kunnen eindgebruikers via rapporten eenvoudig dezelfde data inzien. Daardoor kunnen ze effectiever samenwerken en nog betere beslissingen nemen. Op de achtergrond, ver uit het zicht van de eindgebruikers, werken ontwikkelaars aan verbeteringen van de rapporten. Een goede manier om dat te doen, is via een DevOps-aanpak. Bij die werkwijze lever je in korte iteraties updates of nieuwe Power BI-rapporten op. Vaak gebeurt dat via het OTAP-model: Ontwikkeling, Test, Acceptatie en Productie.
Uitdagingen in Power BI
Om daadwerkelijk te komen tot een nieuw rapport in Power BI, moet je als ontwikkelaar de vernieuwingen handmatig publiceren. Dat is relatief veel werk. Daarnaast moet je toegang hebben tot alle databronnen en is het belangrijk om rekening te houden met versiebeheer, zodat je altijd terug kan naar een eerdere versie. Dat zijn drie zaken waar Power BI niet standaard in voorziet. Welke opties heb je om toch via een DevOps-aanpak gestructureerd vernieuwingen uit te rollen én terug te gaan als een vernieuwing niet werkt?
- Niets veranderen
Als je werkt in een kleine organisatie en de eisen zijn allemaal niet zo strikt, dan kan je prima handmatig werk blijven doen. Zorg er echter wel voor dat je software voor versiebeheer gebruikt, want je wil altijd terug kunnen naar een eerdere situatie. Bijvoorbeeld als een vernieuwd rapport niet het gewenste resultaat heeft. ‘Git’ is daar een handig systeem voor.
- Wachten op de aangekondigde oplossing van Microsoft
Microsoft kondigde in november 2019 op hun evenement Microsoft Ignite een oplossing aan die het eenvoudiger maakt om vernieuwingen te publiceren via het OTAP-model. Die oplossing heet ‘Deployment Pipelines’. Het publiceren van nieuwe rapporten wordt daarmee veel makkelijker. Met een simpele klik op een button moet het al gepiept zijn, en dat moet handmatig werk dus volledig uitbannen. Op die manier kan iedereen, ook mensen zonder ontwikkelkennis, een vernieuwing publiceren. Of het daadwerkelijk zo eenvoudig is, moeten we natuurlijk even afwachten. Microsoft zegt dat de oplossing uiterlijk in Q1 van 2020 uitkomt.
- Gebruikmaken van bestaande extensies uit de Azure Marketplace
De openbare Azure Marketplace biedt ontwikkelaars genoeg mogelijkheden om hulpmiddelen te gebruiken die door andere ontwikkelaars gebouwd zijn. Die extensies maken meestal gebruik van de REST API van Power BI, waarmee je direct rapporten naar de Power BI Service uploadt. Een nadeel is echter wel dat deze extensies zich vaak richten op het oplossen van slechts een deel van de uitdagingen. Voldoet zo’n extensie niet aan je volledige eisen- of wensenpakket, dan moet je nog steeds zelf aan de slag.
- Aan de slag met Azure DevOps
Azure DevOps is een pakket aan Microsoft-services dat ontwikkelaars in staat stelt om een compleet OTAP-model toe te passen. Het pakket biedt een service die het publiceren van nieuwe rapporten mogelijk maakt via een zogenoemde release pipeline. Daarmee kun je zeer gestructureerd vernieuwingen doorvoeren. Daarnaast is er een service die centraal toegangsrechten tot databronnen beheert, waardoor ontwikkelaars zelf geen toegang hoeven te hebben tot alle databronnen. En dankzij een versiebeheersysteem kunnen ontwikkelaars altijd terugvallen op eerdere versies. Azure DevOps maakt, net zoals de extensies uit de Marketplace, gebruik van de Power BI REST API in combinatie met een Powershell-script.
Welke optie kies je?
Welke optie het meest geschikt voor je is, hangt natuurlijk sterk van jouw situatie af. Heb je nooit de behoefte gevoeld aan minder handmatig werk en meer structuur in je uitrol? Dan is zo bezig blijven prima. Heb je dat gevoel wel? Dan is het verstandig om te wachten op de aangekondigde oplossing van Microsoft en niet eerst aan te modderen met extensies uit de Marketplace. Wil je het nog gestructureerder en sneller aanpakken, en vraagt je werk om meer beheermogelijkheden? Dan is Azure DevOps het meest geschikt.
Wil je graag een review of consult van jouw Power BI omgeving? Bekijk dan onze Power BI Review oplossing.