Nieuwe features Power Platform maken het leven weer een stukje gemakkelijker
Data engineer Mark Vos ging onlangs naar de Microsoft Ignite conferentie in Orlando. Barstens vol nieuwe kennis kwam hij terug. De meest interessante nieuwtjes deelt hij in een reeks blogs. Dit derde en laatste artikel gaat over de nieuwste ontwikkelingen aan het Power Platform en meer specifiek over de toevoeging van Development Pipelines en Shared Datasets aan Power BI en van Robotic Process Automation aan Power Automate. Met deze nieuwe services wordt de kans op fouten nog kleiner en wordt het leven weer een stukje gemakkelijker. Eerder schreef Mark al ‘Highlights van Microsoft Ignite’ en ‘End-to-end dataoplossing met Azure Synapse Analytics’.
Microsoft Power Platform
Het Microsoft Power Platform, dat uit vier services bestaat, past goed binnen de missie van Microsoft. Het stelt gebruikers namelijk in staat om zelfstandig oplossingen te bedenken en te bouwen voor een verscheidenheid aan uitdagingen binnen organisaties. Alle services maken onderdeel uit van een low-code/no-code ontwikkelomgeving. Gebruikers kunnen er daardoor zonder veel programmeerkennis mee aan de slag.
- Power BI voor data-visualisatie en analyse.
- Power Apps om applicaties te maken voor het oplossen van een veelvoud aan uitdagingen binnen een organisatie.
- Power Automate om diverse processen binnen een organisatie te automatiseren. Voorheen was de naam van deze service Flow.
- Power Virtual Agents voor het maken van slimme, aanpasbare bots.
Lifecycle management (Power BI)
Op het gebied van Power BI is de toevoeging van Deployment Pipelines een van de grootste aankondigingen. Maar wat is het en waarom is het zo belangrijk?
Als een organisatie gebruik maakt van Power BI, wordt een rapport eerst ontwikkeld met behulp van Power BI Desktop. Zodra het rapport klaar is voor gebruik in de rest van de organisatie, wordt het gedeeld in een workspace op powerbi.com. Als er een aanpassingsverzoek komt, kan de ontwikkelaar van het rapport deze aanpassing doen met Power BI Desktop. Na het uitgebreid testen van het rapport, wordt het opnieuw gedeeld op powerbi.com door het overschrijven van de eerste versie. Maar wat nou als iemand tot de ontdekking komt dat het rapport verkeerde gegevens laat zien en er al beslissingen zijn genomen op basis van de foutieve gegevens? Om dit te voorkomen zijn er momenteel een aantal mogelijkheden.
Op powerbi.com kunnen verschillende workspaces aangemaakt worden. Bijvoorbeeld een workspace om rapporten te testen en een workspace voor rapporten die in productie zijn genomen. Aanpassingen aan een rapport kunnen dan eerst gedeeld worden in de test-workspace en pas nadat het getest en goedgekeurd is binnen de productie-workspace. Met de komst van apps binnen powerbi.com is het mogelijk om de inhoud van de workspace, waaronder rapporten, af te schermen van eindgebruikers. Een aanpassing die alleen gedeeld is binnen een workspace en niet toegevoegd is aan een app, kan op deze manier eerst getest worden door gebruikers die ook toegang hebben tot de workspace. Met het opnemen van een rapport in een app, maak je het rapport beschikbaar voor eindgebruikers.
Er zijn dus oplossingen mogelijk om het releasemanagement binnen Power BI te verbeteren, maar helaas kleven er ook nadelen aan, bijvoorbeeld:
- Afhankelijk van de IT-afdeling;
- Tijdrovend;
- Foutgevoelig.
Om dit te ondervangen introduceert Microsoft Deployment Pipelines binnen Power BI.
Deze service stelt eindgebruikers in staat om per workspace een pipeline aan te maken. Binnen deze pipeline zijn drie zogeheten slots beschikbaar:
- Een slot voor ontwikkeling;
- Een slot om te testen;
- Een slot voor productie.
Elk slot heeft z’n eigen autorisatiemodel. Wanneer een rapport aangepast is, wordt deze eerst naar ontwikkeling uitgerold. Door een vergelijking tussen de slots, die op de achtergrond plaatsvindt, wordt de gebruiker op de hoogte gebracht van eventuele verschillen die zijn ontstaan tussen de verschillende slots. Deze kan een beheerder eenvoudig bekijken en per verschil kan worden bepaald of deze een slot door mogen schuiven totdat ze uiteindelijk in productie terecht komen. Op deze manier is het mogelijk om vroegtijdig issues te constateren, voordat een eindgebruiker hiermee geconfronteerd wordt.
Wil je dit hele mechanisme in actie zien, dan kan dat hier. Op deze site kun je ook de slide deck downloaden zodat je alles nog eens rustig na kunt lezen.
Shared Datasets (Power BI)
Een andere feature die eerder al is aangekondigd, maar wel het benoemen waard is, zijn shared datasets.
Een rapport binnen Power BI bestaat eigenlijk uit twee onderdelen: het rapport en een onderliggende dataset. Denk aan verkoopresultaten van producten aan klanten. Daarnaast kan het meetwaarden bevatten die de ontwikkelaar zelf heeft aangemaakt, zoals de gemiddelde verkoopwaarde van een klant.
Sinds 2017 is het mogelijk om een nieuw rapport te baseren op een reeds bestaande dataset. Zo kun je bijvoorbeeld de meetwaarde die de gemiddelde verkoopwaarde berekent ook gebruiken in een nieuw rapport, zonder dat je deze meetwaarde opnieuw moet definiëren. Dit werkte binnen één workspace. Maar wat als je verschillende workspaces hebt, bijvoorbeeld een voor verkoopgerelateerde rapporten en een voor de marketingafdeling. Een ontwikkelaar binnen de marketingomgeving wil gebruik maken van de gemiddelde verkoopwaarde om bepaalde klanten te kunnen targeten. Voorheen moest deze opnieuw aangemaakt worden binnen de eigen dataset, maar nu is het ook mogelijk om datasets te delen op verschillende workspaces. Het scheelt niet alleen werk, maar er wordt ook één definitie gehanteerd.
Shared datasets kunnen op deze manier gebruikt worden om een centraal en gedeeld datamodel te introduceren. Beheer van definities vindt op één plek plaats en de rapporten in verschillende workspaces maken gebruik van dezelfde definities.
Nog meer?
Naast deze twee updates, zijn er tijdens Ignite nog veel meer ontwikkelingen aangekondigd op het vlak van Power BI:
- Classificeren van gegevens op mate van gevoeligheid, waarbij je met policies kunt bepalen wat er moet gebeuren wanneer rapporten worden geëxporteerd.
- Met AutoML is het mogelijk om automatisch machine learning models te maken. Zie: https://powerbi.microsoft.com/en-us/blog/announcing-automated-machine-learning-in-power-bi-general-availability/
- Toevoeging van lineage. Waar komt de data vandaan en wat gebeurt er mee? Zie: https://powerbi.microsoft.com/en-us/blog/introducing-power-bi-lineage-view/
- Betere integratie met Microsoft Teams.
- Decomposition tree visual.
Kortom, Microsoft zit niet stil en blijft Power BI elke maand verder ontwikkelen.
Macro’s. Wie kent ze nog?
Er wordt wel eens gezegd dat de beste ontwikkelaar een luie ontwikkelaar is. Want waarom zou je herhalend werk handmatig doen, als je dit ook kunt automatiseren. Maar wat als je nu niet zo goed bent in programmeren? Hoe kun je het jezelf dan toch zo gemakkelijk mogelijk maken? In Excel kun je al jarenlang gebruik maken van macro’s. Je maakt een macro, neemt een aantal acties op die je vaak moet herhalen en slaat dit op. De volgende keer roep je de macro op en alles wordt automatisch voor je gedaan. Maar dit handigheidje wil je soms ook ergens anders kunnen toepassen. Bijvoorbeeld als medewerker op de administratie en de factuurverwerking, waar dagelijks tientallen facturen binnenkomen die ingevoerd moeten worden in het financiële pakket. Het factuurnummer komt in invoervakje A, het bedrag in vakje B, de datum in vakje C en het debiteurnummer in vakje D. Het fijne van een factuur is dat deze volgens een vaste structuur opgezet is. Dus waarom zou je dit niet kunnen automatiseren?
Dat kan nu met behulp van Power Automate. Microsoft heeft hier robotic process automation (RPA) aan toegevoegd. RPA is een techniek die gebruikt wordt voor het automatiseren van bedrijfsprocessen met behulp van zogenaamde ‘software-robots’. Zodra een mail binnenkomt in de mailbox van de factuuradministratie, zorgen cognitieve services (onder andere text mining) ervoor dat belangrijke zaken zoals een factuurnummer en datum, automatisch worden gedetecteerd en met behulp van opgenomen macro’s worden ingevoerd in het financiële pakket. Moet de betaling van de factuur nog worden goedgekeurd? Dan is de laatste stap in de macro het verzenden van een mail naar de verantwoordelijke met de mededeling dat een factuur ter goedkeuring klaar staat. Dit alles is mogelijk met geringe kennis van programmeren.
Dit is slechts één voorbeeld. Power Automate bevat een verscheidenheid aan connectoren (https://flow.microsoft.com/nl-nl/connectors/). Denk hierbij aan integratie met Twitter, Google Drive, Gmail, LinkedIn, Instagram, OneDrive, Power BI, RSS en meer.
Meer informatie over Mark