Bepalen wanneer een DirectQuery-model moet worden ontwikkeld
Een DirectQuery-model bestaat uit tabellen waarvoor de eigenschap opslagmodus is ingesteld op DirectQuery en die behoren tot dezelfde brongroep.
Een brongroep is een set modeltabellen die betrekking hebben op een gegevensbron. Er zijn twee typen:
- Importeren : vertegenwoordigt alle tabellen in de importopslagmodus, inclusief berekende tabellen. Er kan slechts één importbrongroep in een model zijn.
- DirectQuery : vertegenwoordigt alle DirectQuery-opslagmodustabellen die betrekking hebben op een specifieke gegevensbron.
Notitie
Een importmodel en een DirectQuery-model bestaan slechts uit één brongroep. Als er meer dan één brongroep is, wordt het modelframework een samengesteld model genoemd. Samengestelde modellen worden beschreven in les 5.
Voordelen van DirectQuery-modellen
Er zijn verschillende voordelen voor het ontwikkelen van een DirectQuery-model.
Grote of snel veranderende gegevensbronnen modelleren
Een DirectQuery-model is een uitstekende frameworkkeuze wanneer uw brongegevens volume- en/of snelheidskenmerken vertonen. Omdat DirectQuery-tabellen niet hoeven te worden vernieuwd, zijn ze geschikt voor grote gegevensarchieven, zoals een datawarehouse. Het is onpraktisch en inefficiënt, zo niet onmogelijk, om een volledig datawarehouse in een model te importeren. Wanneer de brongegevens snel worden gewijzigd en gebruikers de huidige gegevens moeten zien, kan een DirectQuery-model bijna realtime queryresultaten leveren.
Wanneer een rapport een DirectQuery-model opvraagt, worden deze query's door Power BI doorgegeven aan de onderliggende gegevensbron.
Bron-RLS afdwingen
DirectQuery is ook handig wanneer de brondatabase beveiliging op rijniveau (RLS) afdwingt. In plaats van RLS-regels in uw Power BI-model te repliceren, kan de brongegevensdatabase de regels afdwingen. Deze benadering werkt alleen voor sommige relationele databases en omvat het instellen van eenmalige aanmelding voor de gegevenssetgegevensbron. Zie Azure SQL Database met DirectQuery voor meer informatie.
Beperkingen voor gegevenssoevereine
Als uw organisatie beveiligingsbeleid heeft waarmee gegevens worden beperkt die hun locatie verlaten, is het niet mogelijk om gegevens te importeren. Een DirectQuery-model dat verbinding maakt met een on-premises gegevensbron kan geschikt zijn. (U kunt ook overwegen om te installeren Power BI Report Server voor on-premises rapportage.)
Gespecialiseerde gegevenssets maken
De DirectQuery-modus ondersteunt doorgaans relationele databasebronnen. Dat komt doordat Power BI analytische query's moet vertalen naar systeemeigen query's die door de gegevensbron worden begrepen.
Er is echter één krachtige uitzondering. U kunt verbinding maken met een Power BI-gegevensset (of een Azure Analysis Services-model) en deze converteren naar een lokaal DirectQuery-model. Een lokaal model is een relatieve term die de relatie van een model met een ander model beschrijft. In dit geval is de oorspronkelijke gegevensset een extern model en is de nieuwe gegevensset het lokale model. Deze modellen zijn gekoppeld, wat de term is die wordt gebruikt om gerelateerde modellen te beschrijven. U kunt op deze manier maximaal drie modellen koppelen.
Deze mogelijkheid om modellen te koppelen ondersteunt het potentieel om een extern model aan te passen en/of uit te breiden. Het eenvoudigste wat u kunt doen, is de naam van objecten, zoals tabellen of kolommen, wijzigen of metingen toevoegen aan het lokale model. U kunt het model ook uitbreiden met berekende kolommen of berekende tabellen, of nieuwe import- of DirectQuery-tabellen toevoegen. Deze extensies resulteren echter in het maken van nieuwe brongroepen, wat betekent dat het model een samengesteld model wordt. Dat scenario wordt beschreven in les 5.
Zie DirectQuery gebruiken voor Power BI-gegevenssets en Azure Analysis Services voor meer informatie.
Beperkingen voor DirectQuery-modellen
Er zijn veel beperkingen met betrekking tot DirectQuery-modellen waarmee u rekening moet houden. Dit zijn de belangrijkste beperkingen:
Niet alle gegevensbronnen worden ondersteund. Normaal gesproken worden alleen belangrijke relationele databasesystemen ondersteund. Power BI-gegevenssets en Azure Analysis Services-modellen worden ook ondersteund.
Alle Power Query-transformaties (M) zijn niet mogelijk, omdat deze query's moeten worden omgezet in systeemeigen query's die worden begrepen door bronsystemen. Het is bijvoorbeeld niet mogelijk om draai- of draaitransformaties te gebruiken.
Analytische queryprestaties kunnen traag zijn, met name als bronsystemen niet zijn geoptimaliseerd (met indexen of gerealiseerde weergaven), of als er onvoldoende resources zijn voor de analyseworkload.
Analysequery's kunnen van invloed zijn op de prestaties van het bronsysteem. Dit kan leiden tot een tragere ervaring voor alle workloads, waaronder OLTP-bewerkingen.
Prestaties van DirectQuery-modellen verbeteren
Wanneer er een reden is om een DirectQuery-model te ontwikkelen, kunt u enkele beperkingen op twee manieren beperken.
Optimalisaties van gegevensbronnen
U kunt de brondatabase optimaliseren om ervoor te zorgen dat de verwachte analysequeryworkload goed presteert. U kunt met name indexen en gerealiseerde weergaven maken en ervoor zorgen dat de database voldoende resources heeft voor alle workloads.
Tip
U wordt aangeraden altijd samen te werken met de database-eigenaar. Het is belangrijk dat ze begrijpen welke extra workload een DirectQuery-model kan plaatsen in hun database.
Door de gebruiker gedefinieerde DirectQuery-aggregatietabellen
U kunt door de gebruiker gedefinieerde aggregatietabellen toevoegen aan een DirectQuery-model. Door de gebruiker gedefinieerde aggregatietabellen zijn speciale modeltabellen die verborgen zijn (van gebruikers, berekeningen en RLS). Ze werken het beste wanneer ze voldoen aan analytische query's met een hogere hoeveelheid gegevens over grote feitentabellen. Wanneer u de aggregatietabel instelt voor gebruik van de DirectQuery-opslagmodus, kan deze een query uitvoeren op een gerealiseerde weergave in de gegevensbron. U kunt ook een aggregatietabel instellen om de importopslagmodus te gebruiken of automatische aggregaties in te schakelen. Deze opties worden beschreven in les 4.
Zie Richtlijnen voor DirectQuery-modellen in Power BI Desktop voor meer informatie.