Najvhodnejšie postupy optimalizácie funkcie Q&A v službe Power BI
Klásť otázky o údajoch pomocou bežných fráz a prirodzeného jazyka je dôležité. Je ešte výkonnejšia, keď vám údaje odpovedia, a práve to je práve funkcia Q&A v Power BI.
Ak chcete funkcii Q&A umožniť úspešne interpretovať veľkú kolekciu otázok, na ktoré je schopná reagovať, funkcia Q&A predpokladá model. Ak štruktúra vášho modelu nespĺňa niektoré z týchto predpokladov, musíte svoj model upraviť. Tieto úpravy pre funkciu Q&A sú rovnakými optimalizáciami osvedčených postupov pre každý model v službe Power BI bez ohľadu na to, či používate funkciu Q&A.
Použitie nástroja Q&A na opravu otázok
V nasledujúcich častiach popíšeme, ako prispôsobiť model, aby dobre fungoval s funkciou Q&A v službe Power BI. Pomocou nástroja Q&A naučíte funkciu Q&A základné obchodné výrazy a opravíte otázky kladené koncovými používateľmi. Niekedy sa stáva, že otázky stále nie je možné riešiť, pretože údaje sú v nesprávnom tvare alebo chýbajú. V tomto prípade si prečítajte nasledujúce časti, ktoré vám pomôžu optimalizovať funkciu Q&A. Ďalšie informácie nájdete v téme Úvodné informácie o nástrojoch Q&A.
Pridanie chýbajúcich vzťahov
Ak v modeli chýbajú vzťahy medzi tabuľkami, zostavy Power BI a funkcia Q&A nemôžu interpretovať, ako tabuľky spojiť. Vzťahy sú základným kameňom dobrého modelu. Nemôžete napríklad požiadať o celkový predaj pre zákazníkov v Seattli, ak chýba vzťah medzi tabuľkou orders (objednávky ) a tabuľkou customers (zákazníci ). Nasledujúce obrázky znázorňujú model, v prípade ktorý je potrebné vykonať prácu, a model, ktorý je pripravený pre funkciu Q&A.
Potrebné riešenia
Na prvom obrázku nie sú žiadne vzťahy medzi tabuľkami Customers (Zákazníci), Sales (Predaj) a Products (Produkty).
Pripravené pre funkciu Q&A
Na druhom obrázku sú medzi tabuľkami definované vzťahy.
Premenovanie tabuliek a stĺpcov
Výber tabuliek a stĺpcov je pre funkciu Q&A dôležitý. Povedzme napríklad, že máte tabuľku s názvom CustomerSummary (PrehľadZákazníkov ), ktorá obsahuje zoznam vašich zákazníkov. Budete musieť položiť otázku, napríklad "List the customer summaries in Chicago" (Zoznam súhrnov pre zákazníkov v Chicagu), a nie "List the customers in Chicago" (Zobraz zoznam zákazníkov v Chicagu).
Hoci funkcia Q&A dokáže rozdeľovať slová na základnej úrovni a zisťovať množné čísla, Q&A predpokladá, že názvy tabuliek a stĺpcov presne odrážajú ich obsah.
Ďalším príkladom môže byť skutočnosť, že máte tabuľku s názvom Headcount (Počet Zamestnancov), ktorá obsahuje krstné mená a priezviská a čísla zamestnancov. Máte aj ďalšiu tabuľku s názvom Employees (Zamestnanci ), ktorá obsahuje čísla zamestnancov, čísla úloh a počiatočné dátumy. Ľudia oboznámení s modelom by mohol pochopiť túto štruktúru. Niekto iný, kto sa opýta "spočítať zamestnancov" dostane počet riadkov z tabuľky "Zamestnanci". Tento výsledok pravdepodobne nie je to, čo mali na mysli, pretože je to súčet všetkých úloh, ktoré kedy mal každý zamestnanec. Lepšie by bolo premenovať tieto tabuľky tak, aby ich názvy odrážali to, čo naozaj obsahujú.
Potrebné riešenia
Názvy tabuliek, ako napríklad StoreInfo (Informácie o obchodoch) a Product List (Zoznam produktov), potrebujú dopracovať.
Pripravené pre funkciu Q&A
Tabuľky s názvami Store (Obchod ) a Products (Produkty) fungujú lepšie.
Oprava nesprávnych typov údajov
Importované údaje môžu mať nesprávne typy údajov. Najmä stĺpce obsahujúce dátumy a čísla, ktoré sa importujú ako reťazce, nebude funkcia Q&A interpretovať ako dátumy a čísla. Vyberte správny typ údajov v modeli Power BI.
Zmena nastavení stĺpcov s rokom a identifikátorom
Služba Power BI predvolene agreguje číselné stĺpce, takže otázky typu "celkový predaj podľa rokov" môžu niekedy viesť k celkovému súčtu predaja spolu s celkovým súčtom rokov. Ak máte konkrétne stĺpce, v ktorých nechcete, aby sa služba Power BI takto prejavila, nastavte predvolenú vlastnosť súhrnu stĺpca na možnosť Nevytvárať súhrn. Majte na pamäti stĺpce Year (Rok), Month (Mesiac), Day (Deň) a ID (ID), pretože tieto stĺpce najčastejšie vyskytujú problémy. Aj ďalším stĺpcom, ktoré nie sú vhodné na sčítanie, napríklad Age (Vek), by tiež mohlo profitovať z nastavenia predvoleného nastavenia súhrnu na možnosť Nevy sumarizovať alebo Priemer. Toto nastavenie sa nachádza v časti Vlastnosti po vybratí stĺpca.
Výber kategórie údajov pre každý stĺpec dátumu a geografie
Kategória údajov poskytuje znalosti o obsahu stĺpca nad rámec typu údajov. Stĺpec celých čísel môžete napríklad označiť ako psč alebo stĺpec reťazcov ako Mesto, Krajina alebo Oblasť. Funkcia Q&A používa tieto informácie dvomi dôležitými spôsobmi na výber vizualizácie a na prispôsobenie jazykových chýb.
Po prvé, funkcia Q&A používa informácie v kategórii údajov na pomoc pri rozhodovaní o tom, aký druh vizuálneho zobrazenia použiť. Rozpoznáva napríklad, že stĺpce s kategóriou údajov dátumu alebo času sú dobrou voľbou pre vodorovnú os čiarového grafu alebo osi prehrávania bublinového grafu. Predpokladá, že výsledky obsahujúce stĺpce s geografickými kategóriami údajov môžu vyzerať dobre na mape.
Po druhé, funkcia Q&A poskytuje niekoľko vzdelaných hádaní o tom, ako budú používatelia pravdepodobne hovoriť o stĺpcoch s dátumom a geografiou, čo jej pomôže pochopiť určité typy otázok. Napríklad text "when" (kedy) v texte "When was John Smith hired?" (Kedy bol Ján Kováč prijatý?) sa takmer určite priraďuje k stĺpcu dátumov a slovo "Brown" vo výraze "Count customers in Brown" (počet zákazníkov v hnedej farbe) je skôr názov mesta ako farba vlasov.
Výber položky Zoradiť podľa stĺpca pre príslušné stĺpce
Vlastnosť Zoradiť podľa stĺpca umožňuje, aby sa pri zoradení podľa jedného stĺpca automaticky zoradenie iného stĺpca. Ak napríklad položíte otázku "sort customers by hat size" (zoradiť zákazníkov podľa veľkosti klobúka), pravdepodobne chcete, aby sa stĺpec Hat Size (Veľkosť klobúka) zoradol podľa základného čísla veľkosti (XS, S, M, L, XL), a nie podľa abecedy (L, M, S, XL, XS).
Normalizovanie modelu
Nemusíte zmeniť podobu celého modelu. Avšak niektoré štruktúry sú tak ťažké, že funkcia Q&A ich nedokáže dobre spracovať. Ak vykonáte určitú základnú normalizáciu štruktúry modelu, významne sa zvýši využiteľnosť zostáv Power BI, ako aj presnosť výsledkov funkcie Q&A.
Postupujte podľa tohto všeobecného pravidla: Každá jednotlivá "vec", o čom používateľ hovorí, by mala byť zastúpená presne jedným objektom modelu (tabuľkou alebo stĺpcom). Takže, ak používatelia rozprávajú o zákazníkoch, mal by existovať jeden objekt pre položku customer (zákazník ). Ak používatelia hovoria o predaji, mal by existovať jeden objekt pre položku sales (predaj ). Ak ich potrebujete, v Editor Power Query sú k dispozícii bohaté možnosti tvarovania údajov. Priamočiare transformácie je možné upraviť pomocou výpočtov v modeli Power BI.
Nasledujúce časti obsahujú niektoré bežné transformácie, ktoré možno budete musieť vykonať. Ďalšie informácie o normalizácii modelu nájdete v časti Normalizácia vs. denormalizácia v článku Vysvetlenie hviezdicovej schémy a jej dôležitosti pre Službu Power BI .
Vytvorenie nových tabuliek pre entity s viacerými stĺpcami
Ak máte viacero stĺpcov, ktoré slúžia ako jedna samostatná jednotka v rámci väčšej tabuľky, tieto stĺpce by sa mali rozdeliť do vlastnej tabuľky. Povedzme napríklad, že máte stĺpec Contact Name (Meno kontaktu), Contact Title (Titul kontaktu) a Contact Telefón (Kontakt) v rámci vašej tabuľky Companies (Spoločnosti). Lepším návrhom by bolo vytvoriť samostatnú tabuľku Contacts (Kontakty), ktorá bude obsahovať Meno, Názov a Telefón a bude prepojiť späť na tabuľku Companies (Spoločnosti). Takto bude jednoduchšie klásť otázky týkajúce sa kontaktov nezávisle od otázok týkajúcich sa spoločností, pre ktoré tieto kontakty pracujú, a zvýši sa flexibilita zobrazenia.
Potrebné riešenia
Pripravené pre funkciu Q&A
Vytvorenie kontingenčnej tabuľky na odstránenie vriec vlastností
Ak máte vo svojom modeli tašky vlastností , je potrebné zmeniť štruktúru tak, aby každej vlastnosti mala jeden stĺpec. Tašky vlastností, hoci sú vhodné na spravovanie veľkého počtu vlastností, majú vlastné obmedzenia, že zostavy Power BI a funkcia Q&A nie sú navrhnuté na riešenie.
Predstavte si napríklad tabuľku CustomerDemographics (DemografiaZákazníka) so stĺpcami CustomerID (Identifikácia zákazníka), Property (Vlastnosť) a Value (Hodnota), pričom každý riadok predstavuje inú vlastnosť zákazníka (napríklad vek, rodinný stav alebo mesto). Keďže význam stĺpca Value (Hodnota) založený na obsahu stĺpca Property (Vlastnosť) je príliš zaťažený, pre funkciu Q&A je nemožné interpretovať väčšinu dotazov, ktoré sa ho týkajú. Jednoduchá otázka, ako napríklad "show the age of each customer" (zobraziť vek každého zákazníka), by mohla fungovať, pretože by sa dala interpretovať ako "show the customers and customer demographics where property is age" (zobraziť zákazníkov a demografické údaje zákazníka, kde vlastnosťou je vek). Štruktúra modelu však nepodporuje zložitejšie otázky, ako napríklad "average age of customers in Chicago" (priemerný vek zákazníkov v Chicagu). Zatiaľ čo používatelia, ktorí priamo tvoria zostavy Power BI, niekedy dokážu nájsť inteligentné spôsoby na získanie vyhľadávaných údajov, funkcia Q&A funguje len vtedy, keď má každý stĺpec jeden význam.
Potrebné riešenia
Pripravené pre funkciu Q&A
Spájanie na odstránenie rozdelenia
Ak ste rozdelili údaje do viacerých tabuliek alebo vytvorili kontingenčné položky z hodnôt vo viacerých stĺpcoch, niektoré bežné operácie sú pre používateľov ťažké alebo nemožné. Predstavte si najprv typické rozdelenie tabuliek: tabuľka Sales2000-2010 (Predaj2000-2010 ) a tabuľka Sales2011-2020 (Predaj2011-2020 ). Ak sa všetky dôležité zostavy obmedzujú na určitú dekádu, pravdepodobne to takto môžete nechať aj pre zostavy Power BI. Ale vďaka flexibilite funkcie Q&A budú používatelia očakávať odpovede na otázky ako "total sales by year" (celkový predaj podľa rokov). Aby tento dotaz fungoval, musíte spojiť údaje do jednej tabuľky modelu Power BI.
Podobne si predstavte typický kontingenčný stĺpec hodnôt: tabuľku BookTour (KnižnéTurné) obsahujúcu stĺpce Author (Autor), Book (Kniha), City1 (Mesto1), City2 (Mesto2) a City3 (Mesto3). S takouto štruktúrou nie je možné správne interpretovať ani jednoduché otázky, ako je "count books by city" (počet kníh podľa mesta). Aby tento dotaz fungoval, vytvorte samostatnú tabuľku BookTourCities (KnižnéTurnéMestá ), ktorá spája hodnoty mesta do jedného stĺpca.
Potrebné riešenia
Pripravené pre funkciu Q&A
Rozdelenie formátovaných stĺpcov
Ak zdroj, z ktorého importujete údaje, obsahuje formátované stĺpce, zostavy Power BI (a funkcia Q&A) sa nedostanú do stĺpca, aby mohli analyzovať jeho obsah. Takže, ak máte napríklad stĺpec Full Address (Celá adresa ), ktorý obsahuje adresu, mesto a krajinu/oblasť, mali by ste ho tiež rozdeliť na stĺpce Address (Adresa), City (Mesto) a CountryRegion (KrajinaOblasť), aby ich mohli používatelia používať v dotazoch jednotlivo.
Potrebné riešenia
Pripravené pre funkciu Q&A
Podobne platí, že ak máte stĺpce pre celé mená osôb, pridajte stĺpce First Name (Meno ) a Last Name (Priezvisko ) pre prípad, ak by sa niekto chcel pýtať na neúplné mená.
Vytvorenie nových tabuliek pre stĺpce s viacerými hodnotami
Podobná situácia na vyzerať aj vtedy, ak zdroj, z ktorého importujete údaje, obsahuje stĺpce s viacerými hodnotami. Zostavy Power BI (a funkcia Q&A) sa nedostanú do stĺpca, aby mohli analyzovať jeho obsah. Takže, ak máte napríklad stĺpec Composer (Skladateľ), ktorý obsahuje mená viacerých skladateľov pre určitú pieseň, rozdelili ho na viacero riadkov v samostatnej tabuľke Composers (Skladatelia ).
Potrebné riešenia
Pripravené pre funkciu Q&A
Denormalizácia na odstránenie neaktívnych vzťahov
Jediná výnimka z pravidla "normalizácia je lepšia" sa vyskytuje vtedy, keď existuje viac ako jedna cesta na načítanie z jednej tabuľky do druhej. Povedzme napríklad, že máte tabuľku Flights (Lety ) so stĺpcami SourceCityID (IDMeletu) a DestinationCityID (IDCieľovéhoMesto), pričom oba sú prepojené s tabuľkou Cities (Mestá ). Jeden z týchto vzťahov je potrebné označiť ako neaktívny. Keďže funkcia Q&A môže používať iba aktívne vzťahy, nebudete sa môcť pýtať buď iba na štart, alebo na cieľ, podľa toho, ktorý vyberiete. Ak namiesto toho denormalizujete stĺpce s názvom miest do tabuľky Flights (Lety ), môžete klásť otázky, ako napríklad "list the flights for tomorrow with a source city of Seattle and a destination city of San Francisco (zoznam letov na zajtra so štartom v Seattli a cieľom v San Franciscu)."
Potrebné riešenia
Pripravené pre funkciu Q&A
Pridanie synoným k tabuľkám a stĺpcom
Tento krok sa vzťahuje konkrétne na funkciu Q&A (a nie všeobecne na zostavy Power BI). Používatelia často majú veľa výrazov, ktoré používajú na to, aby odkazovali na to isté, ako napríklad celkový predaj, čistý predaj a celkový čistý predaj. Tieto synonymá tabuliek a stĺpcov môžete pridať do modelu Power BI.
Tento krok môže byť dôležitý. Aj pri jednoduchých názvoch tabuliek a stĺpcov môžu používatelia funkcie Q&A klásť otázky pomocou slov, ktoré im napadnú ako prvé. Nevyberajú z preddefinovaného zoznamu stĺpcov. Čím viac rozumných synoným pridáte, tým lepšiu skúsenosť bude mať používateľ s vašou zostavou. Ak chcete pridať synonymá, prejdite v aplikácii Power BI Desktop na zobrazenie Model tak, že vyberiete kartu Model a potom vyberiete pole alebo tabuľku. Na table Vlastnosti sa zobrazí pole Synonymá , do ktorého môžete pridať synonymá.
Nezabúdajte, že ak pridáte rovnaké synonymum do viac ako jedného stĺpca alebo tabuľky, spôsobí to nejednoznačnosť. Ak je to možné, funkcia Q&A používa kontext na výber medzi nejednoznačným synonymom, ale nie všetky otázky obsahujú dostatok kontextu. Ak napríklad používateľ požiada vo svojom modeli o "count the customers" (spočítať zákazníkov) a vy máte vo svojom modeli tri veci so synonymom "customer" (zákazník), môže sa vám nemusia zobraziť odpovede, ktoré hľadá. V takýchto prípadoch vytvorte primárne synonymum ako jedinečné, pretože dané synonymum je to, čo sa použije v opätovnom výraze. Môže to používateľa upozorniť na nejednoznačnosť (napríklad na úpravu výrazu "show the number of archived customer records" (zobraziť počet archivovaných záznamov o zákazníkoch), čo naznačuje, že možno chce položiť otázku inak.