Aanbevolen procedures voor het optimaliseren van Q&A in Power BI

Het is krachtig om algemene zinnen en natuurlijke taal te gebruiken om vragen over uw gegevens te stellen. Het is nog krachtiger wanneer uw gegevens antwoorden geven. Dit is wat de Q&A-functie in Power BI doet.

Om Q&A in staat te stellen om de grote verzameling vragen te interpreteren die kunnen worden beantwoord, maakt Q&A veronderstellingen over het model. Als de structuur van uw model niet voldoet aan een of meer van deze veronderstellingen, moet u uw model aanpassen. Deze aanpassingen voor Q&A zijn dezelfde best practice-optimalisaties voor elk model in Power BI, ongeacht of u Q&A gebruikt.

Q&A-hulpprogramma's gebruiken om uw vragen op te lossen

In de volgende secties wordt beschreven hoe u uw model aanpast, zodat het goed werkt met Q&A in Power BI. Met Q&A-hulpprogramma's leert u uw belangrijkste zakelijke termen aan Q&A en lost u vragen op die uw eindgebruikers stellen. Soms kunnen nog steeds vragen niet worden opgelost omdat de gegevens onjuist zijn vormgegeven of gegevens ontbreken. Lees in dit geval de volgende secties om U te helpen Q&A te optimaliseren. Zie Inleiding tot Q&A-hulpprogramma's voor meer informatie.

Ontbrekende relaties toevoegen

Als er relaties tussen tabellen ontbreken in uw model, kunnen Power BI-rapporten en Q&A niet interpreteren hoe deze tabellen moeten worden samengevoegd. Relaties vormen de hoeksteen van een goed model. U kunt bijvoorbeeld niet vragen om de 'totale verkoop voor Klanten in Seattle' als de relatie tussen de tabel orders en de tabel Klanten ontbreekt. In de volgende afbeeldingen ziet u een model dat werk nodig heeft en een model dat gereed is voor Q&A.

Werk nodig

In de eerste afbeelding zijn er geen relaties tussen de tabellen Klanten, Verkoop en Producten.

Screenshot showing Customers, Sales, and Products tables with no connected relationships.

Gereed voor Q&A

In de tweede afbeelding worden relaties tussen de tabellen gedefinieerd.

Screenshot showing Customers, Sales, and Products tables with interconnected relationships.

De naam van tabellen en kolommen wijzigen

De keuze van tabellen en kolommen is belangrijk voor Q&A. Stel dat u een tabel hebt met de naam CustomerSummary die een lijst met uw klanten bevat. U moet een vraag stellen, zoals 'De samenvattingen van de klant in Chicago vermelden' in plaats van 'De klanten in Chicago vermelden'.

Hoewel Q&A enkele eenvoudige woorden kan breken en meervouds kan detecteren, gaat Q&A ervan uit dat uw tabel- en kolomnamen hun inhoud nauwkeurig weerspiegelen.

Een ander voorbeeld kan zijn als u een tabel hebt met de naam Headcount die voor- en achternamen en werknemersnummers bevat. U hebt een andere tabel met de naam Werknemers die werknemersnummers, taaknummers en begindatums bevat. Mensen bekend met het model kan deze structuur begrijpen. Iemand anders die 'count the employees' vraagt, krijgt een telling van de rijen uit de tabel Werknemers. Dit resultaat is waarschijnlijk niet wat ze in gedachten hadden, omdat het een telling is van elke baan die elke werknemer ooit heeft gehad. Het is beter om de naam van deze tabellen te wijzigen zodat deze echt overeenkomen met wat ze bevatten.

Werk nodig

Tabelnamen zoals StoreInfo en Product list moeten werken.

Screenshot showing examples of table names that aren't optimal for Q and A.

Gereed voor Q&A

Tabellen met de naam Store en Producten werken beter.

Screenshot showing examples of table names that are optimal for Q and A.

Onjuiste gegevenstypen herstellen

Geïmporteerde gegevens kunnen onjuiste gegevenstypen hebben. Met name datum- en getalkolommen die als tekenreeksen worden geïmporteerd, worden niet geïnterpreteerd door Q&A als datums en getallen. Selecteer het juiste gegevenstype in uw Power BI-model.

Screenshot showing the Formatting panel with the Data type and Date time format selected.

De instellingen voor de kolom jaar en id wijzigen

In Power BI worden standaard numerieke kolommen samengevoegd, zodat vragen zoals 'totale verkoop per jaar' soms samen met een eindtotaal van jaren tot gevolg kunnen hebben. Als u specifieke kolommen hebt waarin u niet wilt dat Power BI dit gedrag vertoont, stelt u de standaardeigenschap Samenvatting in de kolom in op Niet samenvatten. Houd rekening met de kolommen Year, Month, Day en ID , omdat deze kolommen de meest voorkomende problemen zijn. Andere kolommen die niet verstandig zijn om op te tellen, zoals Leeftijd, kunnen ook profiteren van het instellen van de standaardsamenvattingop Niet samenvatten of op Gemiddelde. Deze instelling bevindt zich in de sectie Eigenschappen nadat u een kolom hebt geselecteerd.

Screenshot showing the Summarization field with Don't summarize selected.

Een gegevenscategorie kiezen voor elke datum- en geografiekolom

De gegevenscategorie biedt kennis over de inhoud van een kolom buiten het gegevenstype. U kunt bijvoorbeeld een kolom met gehele getallen markeren als een postcode of een tekenreekskolom als plaats, land/regio. Q&A gebruikt deze informatie op twee belangrijke manieren, voor visualisatieselectie en voor taalvooroordelen.

Q&A maakt eerst gebruik van de gegevenscategoriegegevens om keuzes te maken over het type visuele weergave dat moet worden gebruikt. Het herkent bijvoorbeeld dat kolommen met datum- of tijdgegevenscategorieën een goede keuze zijn voor de horizontale as van een lijndiagram of de afspeelas van een bellendiagram. Hierbij wordt ervan uitgegaan dat resultaten met kolommen met geografische gegevenscategorieën er goed uitzien op een kaart.

Ten tweede maakt Q&A een aantal getrainde schattingen over hoe gebruikers waarschijnlijk praten over datum- en geografiekolommen om het te helpen bepaalde typen vragen te begrijpen. Bijvoorbeeld het 'wanneer' in 'Wanneer is John Smith ingehuurd?' is bijna zeker om toe te wijzen aan een datumkolom en de "Brown" in "Count customers in Brown" is waarschijnlijk een stad dan een haarkleur.

Screenshot showing the Data category field with Uncategorized selected.

Kies een sorteren op kolom voor relevante kolommen

Met de eigenschap Sorteren op kolom kan sorteren in één kolom automatisch een andere kolom sorteren. Wanneer u bijvoorbeeld vraagt 'klanten sorteren op hoedgrootte', wilt u waarschijnlijk dat de kolom Hat Size wordt gesorteerd op het onderliggende groottenummer (XS, S, M, L, XL) in plaats van alfabetisch (L, M, S, XL, XS).

Screenshot showing the Sort by column dropdown with Hat Size ID selected.

Uw model normaliseren

U hoeft uw hele model niet opnieuw vorm te geven. Bepaalde structuren zijn echter zo moeilijk dat Q&A ze niet goed afhandelt. Als u een eenvoudige normalisatie van de structuur van uw model uitvoert, neemt de bruikbaarheid van Power BI-rapporten aanzienlijk toe, samen met de nauwkeurigheid van Q&A-resultaten.

Volg deze algemene regel: elk uniek 'ding' waarover de gebruiker praat, moet worden vertegenwoordigd door precies één modelobject (tabel of kolom). Dus als uw gebruikers over klanten praten, moet er één klantobject zijn. Als uw gebruikers praten over verkoop, moet er één verkoopobject zijn. Er zijn uitgebreide mogelijkheden voor het vormgeven van gegevens beschikbaar in Power Query-editor als u ze nodig hebt. De eenvoudigere transformaties kunnen worden aangepast met behulp van berekeningen in het Power BI-model.

De volgende secties bevatten enkele algemene transformaties die u mogelijk moet uitvoeren. Zie Normalisatie versus denormalisatie in het artikel Meer informatie over stervormige schema's en het belang van Power BI voor meer informatie over het normaliseren van een model.

Nieuwe tabellen maken voor entiteiten met meerdere kolommen

Als u meerdere kolommen hebt die fungeren als één afzonderlijke eenheid in een grotere tabel, moeten deze kolommen worden gesplitst in hun eigen tabel. Stel dat u een kolom contactpersoonnaam, titel van contactpersoon en contactpersoon hebt Telefoon kolom in de tabel Bedrijven. Een beter ontwerp is om een afzonderlijke tabel Contactpersonen te maken met de naam, titel en Telefoon en een koppeling naar de tabel Bedrijven. Dit maakt het gemakkelijker om vragen te stellen over contactpersonen onafhankelijk van vragen over bedrijven waarvoor ze de contactpersoon zijn en verbetert de flexibiliteit van de weergave.

Werk nodig

Screenshot showing a Suppliers table that includes contact information.

Gereed voor Q&A

Screenshot showing two tables, one for Suppliers and one for Contacts.

Draai om eigenschapszakken te elimineren

Als u eigenschapstassen in uw model hebt, moeten ze worden geherstructureerd om één kolom per eigenschap te hebben. Eigenschappentassen hebben, terwijl ze handig zijn voor het beheren van grote aantallen eigenschappen, inherente beperkingen hebben die Power BI-rapporten en Q&A niet zijn ontworpen om te omzeilen.

Denk bijvoorbeeld aan een tabel CustomerDemographics met de kolommen CustomerID, Property en Value, waarbij elke rij een andere eigenschap van de klant vertegenwoordigt (bijvoorbeeld leeftijd, burgerlijke staat of plaats). Door de betekenis van de kolom Waarde te overbelasten op basis van de inhoud van de kolom Eigenschap, wordt het onmogelijk voor Q&A om de meeste query's te interpreteren die ernaar verwijzen. Een eenvoudige vraag, zoals 'de leeftijd van elke klant weergeven' werkt mogelijk, omdat deze kan worden geïnterpreteerd als 'toon de klanten en klantdemografische gegevens waar de eigenschap leeftijd is'. De structuur van het model biedt echter geen ondersteuning voor complexere vragen, zoals 'gemiddelde leeftijd van klanten in Chicago'. Hoewel gebruikers die rechtstreeks Power BI-rapporten maken soms slimme manieren vinden om de gegevens op te halen die ze zoeken, werkt Q&A alleen wanneer elke kolom één betekenis heeft.

Werk nodig

Screenshot showing three columns with the headings Customer ID, Property, and Value.

Gereed voor Q&A

Screenshot showing three columns with the headings Customer ID, Age, Hat Size, and City.

Samenvoeging om partitionering te elimineren

Als u uw gegevens hebt gepartitioneerd over meerdere tabellen of waarden hebt gepartitioneerd in meerdere kolommen, zijn sommige veelvoorkomende bewerkingen moeilijk of onmogelijk voor uw gebruikers. Overweeg eerst een typische tabelpartitionering: een tabel Sales2000-2010 en een tabel Sales2011-2020. Als al uw belangrijke rapporten beperkt zijn tot een specifiek decennium, kunt u het waarschijnlijk op deze manier laten staan voor Power BI-rapporten. De flexibiliteit van Q&A leidt er echter toe dat uw gebruikers antwoorden verwachten op vragen zoals 'totale omzet per jaar'. Voordat deze query werkt, moet u de gegevens samenvoegen in één Power BI-modeltabel.

Overweeg ook een typische kolom met pivoted value: een BookTour-tabel met kolommen Auteur, Boek, Plaats1, Plaats2 en Plaats3. Met een dergelijke structuur kunnen zelfs eenvoudige vragen als 'count books by city' niet correct worden geïnterpreteerd. Als deze query werkt, maakt u een afzonderlijke BookTourCities-tabel die de plaatswaarden in één kolom samenvoegt.

Werk nodig

Screenshot showing a table with pivoted value columns, City 1, City 2, and City 3.

Gereed voor Q&A

Screenshot showing two tables, one with book and author information for tours and one with cities associated with the tours.

Opgemaakte kolommen splitsen

Als de bron van waaruit u uw gegevens importeert opgemaakte kolommen bevat, bereiken Power BI-rapporten (en Q&A) niet binnen de kolom om de inhoud te parseren. Dus als u bijvoorbeeld een kolom Volledig adres hebt die het adres, de plaats en het land/de regio bevat, moet u deze ook splitsen in de kolommen Adres, Plaats en Landregio, zodat uw gebruikers er afzonderlijk query's op kunnen uitvoeren.

Werk nodig

Screenshot showing a table with two columns, Customer and Full Address.

Gereed voor Q&A

Screenshot showing a table with five columns, Customer, Full address, Address, City, and Country or Region.

Als u kolommen met een volledige naam voor een persoon hebt, voegt u de kolommen Voornaam en Achternaam toe, voor het geval iemand vragen wil stellen met gedeeltelijke namen.

Nieuwe tabellen maken voor kolommen met meerdere waarden

Als de bron van waaruit u uw gegevens importeert, ook kolommen met meerdere waarden bevat, kunnen Power BI-rapporten (en Q&A) in de kolom niet bereiken om de inhoud te parseren. Dus als u bijvoorbeeld een kolom Composer hebt die de namen van meerdere componisten voor een nummer bevat, splitst u deze in meerdere rijen in een afzonderlijke Composers-tabel .

Werk nodig

Screenshot showing a table with four columns, ID, Name, Genre, and Composers.

Gereed voor Q&A

Screenshot showing two tables, one with ID, Name, and Genre and one with ID and Composer.

Denormaliseren om inactieve relaties te elimineren

De ene uitzondering op de regel 'normalisatie is beter' treedt op wanneer er meer dan één pad is om van de ene tabel naar de andere te gaan. Stel dat u een tabel Vluchten hebt met kolommen SourceCityID en DestinationCityID, die elk zijn gerelateerd aan de tabel Steden . Een van deze relaties moet worden gemarkeerd als inactief. Omdat Q&A alleen actieve relaties kan gebruiken, kunt u geen vragen stellen over bron of bestemming, afhankelijk van wat u hebt gekozen. Als u in plaats daarvan de kolommen met plaatsnamen denormaliseert in de tabel Vluchten , kunt u vragen stellen zoals 'De vluchten voor morgen vermelden met een bronstad Seattle en een bestemmingsstad San Francisco'.

Werk nodig

Screenshot showing two tables, Flights and Airports.

Gereed voor Q&A

Screenshot showing one table named Flights. The columns from the Airports table are added to the Flights table.

Synoniemen toevoegen aan tabellen en kolommen

Deze stap is specifiek van toepassing op Q&A (en niet op Power BI-rapporten in het algemeen). Gebruikers hebben vaak veel termen die ze gebruiken om naar hetzelfde te verwijzen, zoals de totale verkoop, de netto-omzet en de totale netto-omzet. U kunt deze synoniemen toevoegen aan tabellen en kolommen in het Power BI-model.

Deze stap kan belangrijk zijn. Zelfs met eenvoudige tabel- en kolomnamen stellen gebruikers van Q&A vragen met behulp van de woordenlijst die voor het eerst bij hen komt. Ze kiezen niet uit een vooraf gedefinieerde lijst met kolommen. Hoe verstandiger synoniemen u toevoegt, hoe beter de gebruikerservaring bij uw rapport is. Als u synoniemen wilt toevoegen, gaat u in Power BI Desktop naar de modelweergave door het tabblad Model te selecteren en vervolgens een veld of tabel te selecteren. In het deelvenster Eigenschappen ziet u het vak Synoniemen , waar u synoniemen kunt toevoegen.

Screenshot showing the Q&A Properties pane with the Synonyms field highlighted.

Houd er rekening mee dat het toevoegen van hetzelfde synoniem aan meer dan één kolom of tabel dubbelzinnigheid introduceert. Q&A gebruikt waar mogelijk context om te kiezen tussen dubbelzinnige synoniemen, maar niet alle vragen hebben voldoende context. Wanneer een gebruiker bijvoorbeeld vraagt 'tel de klanten', als u drie dingen met het synoniem 'klant' in uw model hebt, krijgt de gebruiker mogelijk niet het antwoord dat hij of zij zoekt. Maak in deze gevallen het primaire synoniem uniek, omdat dat synoniem wordt gebruikt in de aanpassing. Hiermee kan de gebruiker worden gewaarschuwd voor de dubbelzinnigheid (bijvoorbeeld een aanpassing van 'het aantal gearchiveerde klantrecords weergeven'), waarmee wordt aangegeven dat ze het mogelijk anders willen vragen.