Gedeelde datasets in Power BI
herwerkt op
Geschreven in 2022. Microsoft doopte de dataset in november 2023 om tot semantisch model. De naam veranderde, het werkingsprincipe niet, dus alles hieronder klopt nog. Lees dataset als semantisch model.
Een dataset is de plek waar je bronnen samenkomen om er een rapport op te bouwen. Je maakt hem in Power BI Desktop, je publiceert, en je hebt een rapport. De vraag komt pas wanneer een tweede afdeling hetzelfde wil, op precies dezelfde data.
Kopieer je dan het bestand, dan kopieer je ook al je DAX mee. Vanaf dat moment heb je twee versies van dezelfde waarheid, en die lopen uit elkaar. Meestal merk je dat pas in een vergadering.
Daar dient een gedeelde dataset voor: één model, waarop meerdere rapporten leven.
Wat je vooraf vastlegt
- Scheid het model van het rapport. Dat houdt de verantwoordelijkheden uit elkaar.
- Werk waar het kan in importmodus, zodat je capaciteit niet onderuitgaat wanneer meerdere rapporten tegelijk op je model draaien.
- Hou je DAX in het model, en dan vooral je berekende kolommen.
Hoe het loopt
Wie het model bouwt, maakt in Power BI Desktop een bestand aan dat enkel de verbinding met de bronnen bevat, plus de tabellen, de relaties en de maten. De gouden regel: in dat bestand staat geen enkele visualisatie. Het is een model en geen rapport, ook al ziet het bestand er hetzelfde uit.
Bij het publiceren zet Power BI twee dingen in de dienst neer, het lege rapport en het model. Dat lege rapport heeft verder geen functie, dus dat ruim je op.
Wie daarna een echt rapport maakt, legt enkel een live verbinding met dat gepubliceerde model. Hij haalt geen data op, hij bouwt er alleen op. Publiceert hij zijn rapport, dan verschijnt het in de afstamming van het model, zonder dat er een tweede model bij komt.
Eén model, meerdere rapporten, één versie van de waarheid.
Wat het oplevert, en wat het kost
Het levert op dat je onderhoud op één plek zit, dat model en rapport uit elkaar blijven, en dat je één versie van de waarheid overhoudt. Er is nog een voordeel dat weinig genoemd wordt: de splitsing laat mensen groeien. Wie het model bouwt, wordt sterk in Power Query en DAX. Wie rapporteert, wordt sterk in vormgeving en in de vraag achter de vraag.
Het kost je iets aan vrijheid. Wie op een gedeeld model werkt, kan geen berekende kolommen toevoegen zonder eerst een eigen, lokaal model te maken, en daarmee ben je terug bij af. En elke uitbreiding van het model raakt in principe elk rapport dat eraan hangt, dus je hebt een afspraak nodig over wie wat wanneer wijzigt.
Wanneer je het doet
Het hangt af van je organisatie. Toch valt de keuze bij elke klant die Power BI als zelfbedieningsplatform wil uitrollen dezelfde kant op. Eén model per rapport houdt niemand lang vol, en gedeelde modellen winnen dan zonder veel discussie.
Voor mij geeft die ene versie van de waarheid de doorslag. Alles wat je aan governance daarna bouwt, steunt daarop. Zonder dat fundament ben je rapporten aan het vergelijken in plaats van beslissingen aan het nemen.
Power BISSBI-governanceDatamodellering