Lezen in het Engels

Delen via


Waarom wordt mijn query meerdere keren uitgevoerd?

Wanneer u vernieuwt in Power Query, is er achter de schermen veel gedaan om u een soepele gebruikerservaring te bieden en om uw query's efficiënt en veilig uit te voeren. In sommige gevallen ziet u echter mogelijk dat meerdere aanvragen van gegevensbronnen worden geactiveerd door Power Query wanneer gegevens worden vernieuwd. Soms zijn deze aanvragen normaal, maar andere keren kunnen ze worden voorkomen.

Wanneer er meerdere aanvragen plaatsvinden

In de volgende secties worden enkele exemplaren beschreven wanneer Power Query meerdere aanvragen naar een gegevensbron kan verzenden.

Connectorontwerp

Connectors kunnen om verschillende redenen meerdere aanroepen naar een gegevensbron maken, waaronder metagegevens, opslaan in cache van resultaten, paginering, enzovoort. Dit gedrag is normaal en is ontworpen om op die manier te werken.

Meerdere query's die verwijzen naar één gegevensbron

Meerdere aanvragen naar dezelfde gegevensbron kunnen optreden als er meerdere query's uit die gegevensbron worden opgehaald. Deze aanvragen kunnen zelfs plaatsvinden in een geval waarin slechts één query verwijst naar de gegevensbron. Als een of meer andere query's naar die query verwijzen, wordt elke query, samen met alle query's waarop deze afhankelijk is, onafhankelijk geëvalueerd.

In een bureaubladomgeving wordt één vernieuwing van alle tabellen in het gegevensmodel uitgevoerd met één gedeelde cache. Caching kan de kans op meerdere aanvragen voor dezelfde gegevensbron verminderen, omdat één query kan profiteren van dezelfde aanvraag die al is uitgevoerd en in de cache is opgeslagen voor een andere query. Zelfs hier kunt u echter meerdere aanvragen krijgen, omdat:

  • De gegevensbron wordt niet in de cache opgeslagen (bijvoorbeeld lokale CSV-bestanden).
  • De aanvraag voor de gegevensbron verschilt van een aanvraag die al in de cache is opgeslagen vanwege downstreambewerkingen (waardoor het vouwen kan worden gewijzigd).
  • De cache is te klein (wat relatief onwaarschijnlijk is).
  • De query's worden ongeveer op hetzelfde moment uitgevoerd.

In een cloudomgeving wordt elke query vernieuwd met behulp van een eigen afzonderlijke cache. Een query kan dus niet profiteren van dezelfde aanvraag die al in de cache is opgeslagen voor een andere query.

Vouwen

Soms kan de vouwlaag van Power Query meerdere aanvragen genereren voor een gegevensbron, op basis van de bewerkingen die downstream worden uitgevoerd. In dergelijke gevallen voorkomt u mogelijk meerdere aanvragen met behulp van Table.Buffer. Meer informatie: Uw tabel bufferen

Laden naar het Power BI Desktop-model

In Power BI Desktop vernieuwt Analysis Services (AS) gegevens met behulp van twee evaluaties: één om het schema op te halen( wat AS doet door nul rijen te vragen) en één om de gegevens op te halen. Als voor het berekenen van het schema met nul rijen de gegevens moeten worden opgehaald, kunnen er dubbele aanvragen voor gegevensbronnen optreden.

Analyse van gegevensprivacy

Gegevensprivacy voert zijn eigen evaluaties van elke query uit om te bepalen of de query's veilig samen kunnen worden uitgevoerd. Deze evaluatie kan soms meerdere aanvragen naar een gegevensbron veroorzaken. Een telltaleteken dat een bepaalde aanvraag afkomstig is van een gegevensprivacyanalyse is dat deze een 'TOP 1000'-voorwaarde heeft (hoewel niet alle gegevensbronnen een dergelijke voorwaarde ondersteunen). Over het algemeen zou het uitschakelen van gegevensprivacy, ervan uitgaande dat dat acceptabel is, de 'TOP 1000' of andere aanvragen voor gegevensprivacy tijdens het vernieuwen elimineren. Meer informatie: De firewall voor gegevensprivacy uitschakelen

Downloads van achtergrondgegevens (ook wel 'achtergrondanalyse' genoemd)

Net als bij de evaluaties die worden uitgevoerd voor gegevensprivacy, downloadt de Power Query-editor standaard een voorbeeld van de eerste 1000 rijen van elke querystap. Als u deze rijen downloadt, zorgt u ervoor dat de voorbeeldweergave van gegevens gereed is om weer te geven zodra een stap is geselecteerd, maar dit kan ook leiden tot dubbele aanvragen voor gegevensbronnen. Meer informatie: Achtergrondanalyse uitschakelen

Achtergrondtaken van de Power Query-editor

Verschillende achtergrondtaken van de Power Query-editor kunnen ook extra gegevensbronaanvragen activeren (bijvoorbeeld query folding-analyse, kolomprofilering, het automatisch vernieuwen van de preview-versie van 1000 rijen die Power Query activeert na het laden van resultaten in Excel, enzovoort).

Meerdere query's isoleren

U kunt exemplaren van meerdere query's isoleren door specifieke onderdelen van het queryproces uit te schakelen om te isoleren waar de dubbele aanvragen vandaan komen. Als u bijvoorbeeld begint:

  • In de Power Query-editor
  • Als de firewall is uitgeschakeld
  • Als achtergrondanalyse is uitgeschakeld
  • Met kolomprofilering en eventuele andere achtergrondtaken uitgeschakeld
  • [Optioneel] Een Table.Buffer

In dit voorbeeld hebt u slechts één M-evaluatie die plaatsvindt wanneer u de preview-versie van de Power Query-editor vernieuwt. Als de dubbele aanvragen op dit moment plaatsvinden, zijn deze op een of andere manier inherent aan de manier waarop de query wordt geschreven. Zo niet, en als u de eerder beschreven instellingen één voor één inschakelt, kunt u zien op welk moment de dubbele aanvragen plaatsvinden.

In de volgende secties worden deze stappen gedetailleerder beschreven.

Power Query-editor instellen

U hoeft de query niet opnieuw te verbinden of opnieuw te maken. Open de query die u wilt testen in de Power Query-editor. U kunt de query in de editor dupliceren als u de bestaande query niet wilt gebruiken.

De firewall voor gegevensprivacy uitschakelen

De volgende stap is het uitschakelen van de firewall voor gegevensprivacy. In deze stap wordt ervan uitgegaan dat u zich geen zorgen maakt over het lekken van gegevens tussen bronnen. Als u de firewall voor gegevensprivacy uitschakelt, kunt u de instellingen voor privacyniveau altijd negeren die worden beschreven in de optie Snel combineren instellen in Excel of de privacyniveaus negeren en mogelijk de prestatie-instelling verbeteren die wordt beschreven in de privacyniveaus van Power BI Desktop in Power BI Desktop.

Zorg ervoor dat u deze stap ongedaan maakt voordat u de normale tests hervat.

Achtergrondanalyse uitschakelen

De volgende stap is het uitschakelen van achtergrondanalyse. Achtergrondanalyse wordt beheerd door de preview-versie van gegevens toestaan om te downloaden in de achtergrondinstelling die wordt beschreven in Vernieuwen op de achtergrond van Power Query uitschakelen voor Power BI. U kunt deze optie ook uitschakelen in Excel.

Afbeelding van queryopties in Excel met uitgeschakelde achtergrondanalyse.

Uw tabel bufferen

U kunt eventueel ook gebruiken Table.Buffer om af te dwingen dat alle gegevens worden gelezen, wat imiteert wat er gebeurt tijdens een belasting. Ga als volgt te werk om te gebruiken Table.Buffer in de Power Query-editor:

  1. Selecteer in de formulebalk van de Power Query-editor de fx-knop om een nieuwe stap toe te voegen.

    Afbeelding met de locatie van de fx-knop benadrukt.

  2. Plaats in de formulebalk de naam van de vorige stap tussen Table.Buffer(<vorige stapnaam).> Als de vorige stap bijvoorbeeld de naam Sourceheeft, wordt de formulebalk weergegeven = Source. Bewerk de stap in de formulebalk om te zeggen = Table.Buffer(Source).

Meer informatie: Table.Buffer

De test uitvoeren

Als u de test wilt uitvoeren, moet u een vernieuwing uitvoeren in de Power Query-editor.

Afbeelding met de locatie van de knop Vernieuwen benadrukt.