Power Query vs DAX? Hoe krijg je het beste van 2 werelden?

Let's end the battle once and for all. Wanneer je Power BI start te gebruiken, kan dit een beetje verwarring met zich meebrengen. Mogelijk hebt je al gehoord van Power Query en de M-language - of misschien heb je het zelfs in reeds in Excel gebruikt. En dan is er nog good old DAX. Waarom zijn meerdere programmeertalen in Power BI en wat is het verschil? En hoe te beslissen wanneer te gebruiken welke van hen? We lichten het graag even voor je toe.

Wat is Power Query / M?

Laten we beginnen met Power Query. Het is erg handig dat Power Query deel uitmaakt van Power BI, omdat veel van de gebruikers al met Power Query hebben gewerkt in Excel of in andere Microsoft-hulpprogramma's (bijvoorbeeld Power Apps, Azure Data Factory, SQL Server Analysis Services of Dynamics 365 Customer Insights). 

Maar in de eerste plaats is Power Query een ETL-tool (Extract Transform Load). Het helpt je om gegevens uit verschillende bronnen te combineren en laat je toe je gegevens opschonen en modelleren. Met zijn overzichtelijke grafische gebruikersinterface, vergelijkbaar met de omgeving van andere Microsoft-tools, kan zelfs een beginner binnen de kortste keren complexe cleaning- en opmaaktransformaties uitvoeren zonder één regel code aan te raken.

Zodra je vertrouwd geraakt bent met de Power Query, kan je jezelf beginnen uitdagen met de M-language. Alvast veel succes.

Dat opent dan weer nieuwe deuren met nog meer mogelijkheden. Als er 1 iets is dat ik erg leuk vind aan Power Query / M is dat ik kan schakelen tussen klikken en coderen wanneer ik maar wil. Zo zijn er heel veel stappen in het ETL-proces die vaak terugkomen (denk aan transpose, extract...) en waarvoor je slecht op één knop moet drukken. Een ander belangrijk voordeel is een betere compressie van het geheugen. Dat betekent dat de grootte van het bestand langzamer groeit dan bij DAX en minder schijfruimte vereist. Kleinere bestandsgrootte betekent minder kosten voor de opslagruimte en doorgaans snellere interacties.  

Reeds geregistreerd?

Bent u reeds geregistreerd voor onze "Dashboard van de Maand" nieuwsletter? Elke maand stellen we u een uniek dashboard voor en verduidelijken we hoe onze klanten doelen voorop stellen en deze aan de hand van Power BI trachten te bereiken. Niet te missen!

DAX

DAX, of Data Analysis Expression, is een 2de programmeertaal in Power BI, volledig anders dan M. Het is vergelijkbaar met Microsoft Excel-functies, dus gebruikers uit Excel vinden het misschien gemakkelijker om te leren dan de M-taal. Het belangrijkste verschil met Excel-formules is dat DAX-functies bedoeld zijn om te werken met relationele gegevens.  

Momenteel worden er meer dan 250 functies gebruikt in DAX en het aantal neemt nog steeds toe.

Deze functies omvatten filters, financiële functies, wiskundige en logische functies, relatiefuncties, tijd- en datumintelligentie en vele andere.  

Met DAX-functies kan je measures en calculated columns maken, 2 termen die je als Power BI gebruiker vaak zult tegenkomen. Measures zijn dynamische berekeningsformules waarbij de resultaten veranderen afhankelijk van de context. Measures berekenen, in vergelijking met calculated columns, geen waarden voor elke rij, maar retourneren geaggregeerde waarden uit geselecteerde kolom(en) of de gegevensset. Ze zijn zeer nuttig bij datavisualisatie en data-analyse.  

De meest toegankelijke manier om het concept van measures te begrijpen, is via de ingebouwde Quick Measure-functies die een point-and-click-toegang bieden tot veelgebruikte measures zoals SUM, MIN, MAX, enz. In een notendop definiëren measures wat je laat zien in een visualisatie. Dit maakt ze cruciaal in Power BI.  

Situaties waarin u alleen DAX of Power Query kunt gebruiken.

Meestal zijn er veel manieren en benaderingen om een data-analyse te voltooien. Dat kan lastig zijn in Power BI, omdat in veel situaties zowel DAX als Power Query kunnen worden gebruikt. Dit kan leiden tot verwarring of zelfs 'keuzestress'. Het antwoord is in feite steeds te vinden in de dataset, visualisaties, de relaties en inzichten die de data analist wil weergeven.

Bij Power Partners gebruiken we Power BI dagelijks, we hebben een poging ondernomen om consistente regels te bedenken wanneer we de ene, dan wel de andere moeten gebruiken.

DAX

  • Aggregaties. Wanneer u geaggregeerde waarden uit een tabel of een dataset moet kregen voor verdere berekeningen of visualisaties, is de beste en snelste manier om dit te doen met DAX-geaggregeerde functies.  
  • Filterfuncties. In metingen zijn filterfuncties een van de meest gebruikte functies. Het helpt om alleen de relevante informatie te filteren en/of de gegevenscontext te manipuleren om dynamische berekeningen te maken, zonder het gegevensmodel en de tabellen te wijzigen. Dit is belangrijk voor het visualiseren en samenvoegen van specifieke waarden voor rapporten en dashboards en andere berekeningen met behulp van die filtermetingen.  
  • Relaties veranderen. In sommige scenario's moet u de relaties tussen twee tabellen wijzigen van inactief naar actief. Dit gebeurt met behulp van de functie USERELATIONSHIP. Een dergelijke functie bestaat niet in Power Query.
  • Bovenliggende - onderliggende functies (hiërarchieën). DAX bevat functies om bijvoorbeeld het aantal ouders in de afstamming (pad) te retourneren, alle ouders weer te geven, TRUE terug te geven als een item zich op een specifiek pad bevindt, enzovoort.
  • Calculated column die verwijst naar een kolom uit een andere tabel. Met DAX kan de gebruiker eenvoudig kolommen uit verschillende tabellen in de formule invoegen. In Power Query vereist deze manoeuvre meer stappen en wordt deze ingewikkelder.  

Power Query

  • ETL- en ELT-processen. Extract – Transform – Load and Extract – Load – Transform zijn de twee benaderingen voor het verwerken van gegevens. Beide kunnen nuttig zijn in verschillende scenario's. In Power Query kunt u gegevens importeren, combineren en bijwerken uit verschillende bronnen (bijvoorbeeld lokale map, SharePoint, datastream, online services, Azure en nog veel meer). De gegevens worden vervolgens opgeschoond en getransformeerd. Na het opschonen en transformeren van de gegevens wordt het model gewijzigd. Elke afzonderlijke stap kan worden aangepast in de M-taal; de volledige reeks stappen wordt vervolgens weergegeven op het tabblad Toegepaste stappen.  

Hoe we het doen bij Power Partners

Onze eerste stappen worden altijd gezet in de Power Query Editor, waar we gegevens uit verschillende bronnen verzamelen, de gegevens opschonen en opmaken. Dit behoort tot het absolute minimum van het ETL proces.

De eerste DAX die we gebruiken, zijn measures en extra calculated columns die deze measures gebruiken.  

Met DAX maken we vervolgens filters die specifieke informatie in de visuals weergeven en ons helpen om rapporten en dashboards nog informatiever te maken en zo nog gerichter op de business case in te gaan.

We zetten dit proces op in de Power Query Editor, hierdoor zie je niet alleen de databronnen van elke tabel, maar ook alle stappen die in chronologische volgorde binnen het gegevensmodel en de bijbehorende tabellen zijn geïmplementeerd.  

Het visualiseren van de stappen is enorm nuttig voor elke data-analist. Ook bij complexere datamodellen is het belangrijk om een duidelijk overzicht te hebben van de tabellen en hun relaties. Dit wordt geleverd door de viewer query afhankelijkheden waarmee u deze verbindingen kunt beheren en volgen.

Tot slot bereiden we het hele datamodel voor in Power Query en vervolgens worden er aanvullende berekeningen zoals metingen en filters gemaakt met DAX om trends, KPI's, totalen en andere (financiële) indicatoren weer te geven.

Voelt Power BI nog niet helemaal vertrouwd aan?

Boek nu een van onze opleidingsmodules via Power BI Classes!

conclusie

Kortom, uw eerste stappen moeten worden uitgevoerd in Power Query Editor. Met de grafische gebruikersinterface en de M-taal kunnen zowel gevorderde gebruikers als beginners de gegevens voorbereiden op verdere analyse en visualisaties in Power Query Editor. Calculated columns in Power Query bieden een betere compressie dan calculated columns in DAX, wat resulteert in lagere bestandsgroottes en kortere vernieuwingstijden van gegevens.  

DAX daarentegen kan erg handig zijn bij het focussen op specifieke segmenten in de gegevens en het voorbereiden van rapporten en dashboards. Aggregaties, filters en berekeningen, zoals lopende totalen, procentuele verschillen of jaar-op-jaar wijzigingen, kunnen direct met minimale inspanning worden berekend, vooral met de optie Quick measures.   

Download onze dashboard portfolio. 

Leer hoe BI ook uw onderneming kan helpen.

 

Management dashboards

Financiële KPI's

Power BI voorbeelden

Gratis advies

Some of our recent Power BI dashboard projects, reach out for your own design.

Leave a comment

Je e-mailadres zal niet getoond worden. Vereiste velden zijn gemarkeerd met *

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.