Bedste fremgangsmåder til optimering af Q&A i Power BI
Det er effektivt at bruge almindelige udtryk og naturligt sprog til at stille spørgsmål om dine data. Det er endnu mere effektivt, når dine data svarer, hvilket er, hvad Q&A-funktionen i Power BI gør.
For at gøre det muligt for Q&A at fortolke den store samling af spørgsmål, som den er i stand til at besvare, stiller Q&A antagelser om modellen. Hvis strukturen i din model ikke opfylder en eller flere af disse forudsætninger, skal du justere din model. Disse justeringer af Q&A er de samme optimeringer af bedste praksis for alle modeller i Power BI, uanset om du bruger Q&A.
Brug Q&A-værktøjer til at løse dine spørgsmål
I følgende afsnit beskriver vi, hvordan du justerer din model, så den fungerer godt sammen med Q&A i Power BI. Med Q&A-værktøjer kan du lære dine kerneforretningsord at besvare spørgsmål og løse spørgsmål, som dine slutbrugere stiller. Nogle gange kan spørgsmål stadig ikke besvares, fordi dataene er formet forkert, eller der mangler data. I dette tilfælde skal du læse følgende afsnit for at hjælpe dig med at optimere Q&A. Du kan få flere oplysninger under Introduktion til Q&A-værktøjer.
Tilføj manglende relationer
Hvis din model mangler relationer mellem tabeller, kan Power BI-rapporter og Q&A ikke fortolke, hvordan disse tabeller joinforbindes. Relationer er hjørnestenen i en god model. Du kan f.eks. ikke bede om "det samlede salg for Seattle-kunder", hvis relationen mellem tabellen Ordrer og tabellen Kunder mangler. Følgende billeder viser en model, der kræver arbejde, og en model, der er klar til Q&A.
Kræver arbejde
På det første billede er der ingen relationer mellem tabellerne Customers, Sales og Products.
Klar til Q&A
På det andet billede defineres relationer mellem tabellerne.
Omdøb tabeller og kolonner
Valget af tabeller og kolonner er vigtigt for Q&A. Lad os f.eks. sige, at du har en tabel med navnet CustomerSummary , der indeholder en liste over dine kunder. Du skal stille et spørgsmål som "Angiv kundeoversigterne i Chicago" i stedet for "Angiv kunderne i Chicago".
Mens Q&A kan udføre nogle grundlæggende ordbrud og registrere flertal, antager Q&A, at dine tabel- og kolonnenavne nøjagtigt afspejler deres indhold.
Et andet eksempel kan være, hvis du har en tabel med navnet Headcount , der indeholder for- og efternavne og medarbejdernumre. Du har en anden tabel med navnet Medarbejdere , der indeholder medarbejdernumre, jobnumre og startdatoer. Mennesker, der kender modellen, kan forstå denne struktur. En anden, der spørger "tæl medarbejderne", får en optælling af rækkerne fra tabellen "Medarbejdere". Dette resultat er sandsynligvis ikke, hvad de havde i tankerne, fordi det er en optælling af hvert job, hver medarbejder nogensinde har haft. Det er bedre at omdøbe disse tabeller, så de afspejler det, de indeholder.
Kræver arbejde
Tabelnavne som StoreInfo og Produktliste skal fungere.
Klar til Q&A
Tabeller med navnet Butik og Produkter fungerer bedre.
Ret forkerte datatyper
Importerede data kan have forkerte datatyper. Dato- og talkolonner, der importeres som strenge, fortolkes ikke af Q&A som datoer og tal. Vælg den korrekte datatype i din Power BI-model.
Rediger indstillingerne for år og id-kolonne
Power BI aggregerer numeriske kolonner som standard, så spørgsmål som "samlet salg efter år" kan nogle gange resultere i en samlet total af salg sammen med et samlet antal år. Hvis du har bestemte kolonner, hvor du ikke ønsker, at Power BI skal udvise denne funktionsmåde, skal du angive standardegenskaben Opsummering for kolonnen til Opsummer ikke. Vær opmærksom på kolonnerne Year, Month, Day og ID , da disse kolonner er de hyppigste problemer. Andre kolonner, der ikke er fornuftige at opsummere, f.eks. Alder, kan også drage fordel af at angive standardopsummering til Opsummer ikke eller Til Gennemsnit. Denne indstilling findes i afsnittet Egenskaber, når du har valgt en kolonne.
Vælg en datakategori for hver dato- og geografikolonne
Datakategorien giver viden om indholdet af en kolonne ud over datatypen. Du kan f.eks. markere en heltalskolonne som et postnummer eller en strengkolonne som by, land/område. Q&A bruger disse oplysninger på to vigtige måder til valg af visualiseringer og til sprogfordomme.
For det første bruger Q&A oplysningerne i Datakategori til at træffe valg om, hvilken type visualisering der skal bruges. Den genkender f.eks., at kolonner med datakategorier for dato eller klokkeslæt er et godt valg for den vandrette akse i et kurvediagram eller afspilningsaksen i et boblediagram. Det antages, at resultater, der indeholder kolonner med geografiske datakategorier , kan se godt ud på et kort.
For det andet foretager Q&A nogle kvalificerede gæt om, hvordan brugerne sandsynligvis vil tale om kolonner med dato og geografi for at hjælpe dem med at forstå visse typer spørgsmål. "Hvornår" i "Hvornår blev John Smith ansat?" er næsten sikker på at knytte til en datokolonne, og "Brown" i "Count customers in Brown" er mere tilbøjelige til at være en by end en hårfarve.
Vælg en Sortér efter kolonne for relevante kolonner
Egenskaben Sortér efter kolonne gør det muligt for sortering i én kolonne automatisk at sortere en anden kolonne i stedet. Når du f.eks. spørger "sortér kunder efter hatstørrelse", vil du sandsynligvis gerne have, at kolonnen Hat Size sorteres efter det underliggende størrelsesnummer (XS, S, M, L, XL) i stedet for alfabetisk (L, M, S, XL, XS).
Normaliser din model
Du behøver ikke at omforme hele modellen. Visse strukturer er dog så svære, at Q&A ikke håndterer dem godt. Hvis du udfører en grundlæggende normalisering af strukturen i din model, øges anvendeligheden af Power BI-rapporter betydeligt sammen med nøjagtigheden af Q&A-resultater.
Følg denne generelle regel: Hver enkelt entydige "ting", som brugeren taler om, skal repræsenteres af nøjagtigt ét modelobjekt (tabel eller kolonne). Så hvis dine brugere taler om kunder, skal der være ét kundeobjekt . Hvis brugerne taler om salg, bør der være ét salgsobjekt . Der er omfattende funktioner til dataformatering tilgængelig i Power Query-editor, hvis du har brug for dem. De mere enkle transformationer kan justeres ved hjælp af beregninger i Power BI-modellen.
Følgende afsnit indeholder nogle almindelige transformationer, som du muligvis skal udføre. Se Normalisering vs. denormalisering i artiklen Forstå stjerneskema og vigtigheden af Power BI for at få flere oplysninger om normalisering af en model.
Opret nye tabeller til objekter med flere kolonner
Hvis du har flere kolonner, der fungerer som en enkelt særskilt enhed i en større tabel, skal disse kolonner opdeles i deres egen tabel. Lad os f.eks. sige, at du har kolonnen Kontaktnavn, Kontakttitel og Kontakt Telefon i tabellen Firmaer. Et bedre design ville være at have en separat tabel over kontakter, der indeholder navn, titel og Telefon og et link tilbage til tabellen Firmaer. Det gør det nemmere at stille spørgsmål om kontakter uafhængigt af spørgsmål om virksomheder, som de er kontakt for, og forbedrer fleksibiliteten i visningen.
Kræver arbejde
Klar til Q&A
Pivotér for at fjerne egenskabsposer
Hvis du har egenskabsposer i din model, skal de omstruktureres, så de har en enkelt kolonne pr. egenskab. Egenskabsposer er praktiske til administration af et stort antal egenskaber, men har indbyggede begrænsninger, som Power BI-rapporter og Q&A ikke er designet til at løse.
Overvej f.eks. en kundedemografisk tabel med kolonnerne CustomerID, Property og Value, hvor hver række repræsenterer en anden egenskab for kunden (f.eks. alder, ægteskabelig status eller by). Ved at overbelaste betydningen af kolonnen Value baseret på indholdet af kolonnen Property bliver det umuligt for Q&A at fortolke de fleste forespørgsler, der refererer til den. Et simpelt spørgsmål, f.eks. "vis hver kundes alder", kan forekomme at fungere, da det kan fortolkes som "vis kunderne og kundedemografien, hvor egenskaben er alder". Modellens struktur understøtter dog ikke mere komplekse spørgsmål som "gennemsnitsalder for kunder i Chicago". Selvom brugere, der direkte opretter Power BI-rapporter, nogle gange kan finde smarte måder at hente de data, de leder efter, fungerer Q&A kun, når hver kolonne har en enkelt betydning.
Kræver arbejde
Klar til Q&A
Forening for at fjerne partitionering
Hvis du har partitioneret dine data på tværs af flere tabeller eller har pivoteret værdier på tværs af flere kolonner, er nogle almindelige handlinger vanskelige eller umulige for brugerne at opnå. Overvej først en typisk tabelpartitionering: en tabel af typen Sales2000-2010 og tabellen Sales2011-2020 . Hvis alle dine vigtige rapporter er begrænset til et bestemt årti, kan du sandsynligvis lade det være på denne måde for Power BI-rapporter. Fleksibiliteten i Q&A får dine brugere til at forvente svar på spørgsmål som "samlet salg efter år". Hvis denne forespørgsel skal fungere, skal du forene dataene i en enkelt Power BI-modeltabel.
På samme måde kan du overveje en typisk pivoteret værdikolonne: en BookTour-tabel , der indeholder kolonnerne Author, Book, City1, City2 og City3. Med en struktur som denne kan selv simple spørgsmål som "tæl bøger efter by" ikke fortolkes korrekt. Hvis denne forespørgsel skal fungere, skal du oprette en separat tabel af typen BookTourCities , som forener byværdierne til en enkelt kolonne.
Kræver arbejde
Klar til Q&A
Opdel formaterede kolonner
Hvis den kilde, du importerer dine data fra, indeholder formaterede kolonner, når Power BI-rapporter (og Q&A) ikke ind i kolonnen for at fortolke indholdet. Så hvis du f.eks. har en kolonne med fuld adresse , der indeholder adressen, by og land/område, skal du også opdele den i kolonnerne Adresse, By og LandOmråde, så brugerne kan forespørge dem individuelt.
Kræver arbejde
Klar til Q&A
Hvis du på samme måde har kolonner med fulde navne for en person, skal du tilføje kolonnerne Fornavn og Efternavn , hvis nogen vil stille spørgsmål ved hjælp af delvise navne.
Opret nye tabeller til kolonner med flere værdier
En lignende situation er, at hvis den kilde, du importerer dine data fra, indeholder kolonner med flere værdier, kan Power BI-rapporter (og Q&A) ikke nå ind i kolonnen for at analysere indholdet. Så hvis du f.eks. har en komponistkolonne, der indeholder navnene på flere komponister for en sang, kan du opdele den i flere rækker i en separat tabel over komponister .
Kræver arbejde
Klar til Q&A
Denormaliser for at eliminere inaktive relationer
Den eneste undtagelse til reglen "normalisering er bedre" opstår, når der er mere end én sti at hente fra én tabel til en anden. Lad os f.eks. sige, at du har en tabel med flyafgange med både kolonnerne SourceCityID og DestinationCityID, som hver især er relateret til tabellen Cities . En af disse relationer skal markeres som inaktiv. Da Q&A kun kan bruge aktive relationer, kan du ikke stille spørgsmål om hverken kilde eller destination, afhængigt af hvilken du har valgt. Hvis du i stedet deormaliserer kolonnerne bynavn i tabellen Flyafgange , kan du stille spørgsmål som "angiv flyafgange til i morgen med en kildeby i Seattle og en destinationsby i San Francisco."
Kræver arbejde
Klar til Q&A
Føj synonymer til tabeller og kolonner
Dette trin gælder specifikt for Q&A (og ikke for Power BI-rapporter generelt). Brugerne har ofte mange begreber, de bruger til at referere til det samme, f.eks. samlet salg, nettoomsætning og samlet nettoomsætning. Du kan føje disse synonymer til tabeller og kolonner i Power BI-modellen.
Dette trin kan være vigtigt. Selv med enkle tabel- og kolonnenavne stiller Q&A-brugere spørgsmål ved hjælp af det ordforråd, der først kommer til dem. De vælger ikke på en foruddefineret liste over kolonner. Jo mere fornuftige synonymer du tilføjer, jo bedre er din brugers oplevelse med din rapport. Hvis du vil tilføje synonymer, skal du gå til visningen Model i Power BI Desktop ved at vælge fanen Model og derefter vælge et felt eller en tabel. Ruden Egenskaber viser feltet Synonymer , hvor du kan tilføje synonymer.
Vær opmærksom på, at hvis du føjer det samme synonym til mere end én kolonne eller tabel, medfører det flertydighed. Q&A bruger kontekst, hvor det er muligt, til at vælge mellem tvetydige synonymer, men ikke alle spørgsmål har tilstrækkelig kontekst. Når en bruger f.eks. spørger "tæl kunderne", hvis du har tre ting med synonymet "kunde" i din model, får brugeren muligvis ikke det svar, vedkommende leder efter. I disse tilfælde skal du gøre det primære synonym entydigt, fordi dette synonym er det, der bruges i gentagelsen. Det kan gøre brugeren opmærksom på flertydigheden (f.eks. en omskrivning af "vis antallet af arkiverede kundeposter"), som antyder, at vedkommende måske vil spørge om det på en anden måde.