Introduktion
Att skapa en bra semantisk modell är en av de viktigaste uppgifterna som en dataanalytiker kan utföra i Microsoft Power BI. Om du gör ett bra jobb underlättar du för andra att förstå dina data, vilket gör det lättare för både dem och dig att skapa värdefulla Power BI-rapporter.
Sidorna i den här modulen är endast instruktionsbaserade, inga datafiler tillhandahålls. Du har en chans att arbeta med verkliga data i labbuppgifterna.
En bra semantisk modell har följande fördelar:
Datautforskning är snabbare.
Sammansättningar är enklare att bygga.
Rapporter är mer exakta.
Det tar mindre tid att skriva rapporter.
Rapporter är enklare att spara i framtiden.
Att ange regler för vad som gör en bra semantisk modell är svårt eftersom alla data är olika och användningen av dessa data varierar. I allmänhet är en mindre semantisk modell bättre eftersom den fungerar snabbare och blir enklare att använda. Men att definiera vad en mindre semantisk modell innebär är lika problematiskt eftersom det är ett heuristiskt och subjektivt koncept.
Vanligtvis består en mindre semantisk modell av färre tabeller och färre kolumner i varje tabell som användaren kan se. Om du importerar alla nödvändiga tabeller från en försäljningsdatabas, men det totala antalet tabeller är 30, kommer användaren inte tycka att det är intuitivt. Om dessa tabeller döljs i fem tabeller blir den semantiska modellen mer intuitiv för användaren, men om användaren öppnar en tabell och hittar 100 kolumner kan den vara överväldigande. Om du tar bort onödiga kolumner för att tillhandahålla ett mer hanterbart tal ökar sannolikheten för att användaren läser alla kolumnnamn. Sammanfattnings nog bör du sträva efter enkelhet när du utformar dina semantikmodeller.
Följande bild är ett exempel på en semantisk modell. Rutorna innehåller tabeller med data, där varje radobjekt i rutan är en kolumn. Linjerna som kopplar samman rutorna motsvarar relationer mellan tabellerna. Dessa relationer kan vara komplexa, även i en sådan förenklad modell. Den semantiska modellen kan enkelt bli oorganiserad och det totala antalet tabeller i modellen kan öka gradvis. Att hålla din semantiska modell enkel, omfattande och korrekt kräver konstant ansträngning.
Relationer definieras mellan tabeller genom primär- och sekundärnycklar. Primärnycklar är en eller flera kolumner som identifierar varje unik rad som inte är null. Om du till exempel har en tabell med kunder kan du ha ett index som identifierar varje unik kund. Den första raden har ID:t 1, den andra raden ett ID på 2 och så vidare. Varje rad tilldelas ett unikt värde, som kan anges med det här enkla värdet: primärnyckeln. Den här processen blir viktig när du refererar till rader i en annan tabell, något som sekundärnycklar gör. Relationer mellan tabeller bildas när du har primär- och sekundärnycklar gemensamt mellan olika tabeller.
Power BI tillåter att relationer skapas från tabeller med olika datakällor, en kraftfull funktion som gör så att du kan hämta en tabell från Microsoft Excel och en annan från en relationsdatabas. Sedan skulle du skapa relationen mellan dessa två tabeller och behandla dem som en enhetlig semantisk modell.
Nu när du har lärt dig om de relationer som utgör dataschemat kan du utforska en specifik typ av schemadesign, star schema, som är optimerat för höga prestanda och användbarhet.
Star-scheman
Du kan utforma ett star-schema för att förenkla dina data. Det är inte det enda sättet att förenkla data men det är en populär metod, och därför bör alla Power BI-dataanalytiker förstå den. I ett star-schema definieras varje tabell i din semantiska modell som en dimension eller en faktatabell, enligt följande visuella objekt.
Faktatabeller innehåller observations- eller händelsedatavärden: säljorder, produktantal, priser, transaktionsdatum och -tider och kvantiteter. Faktatabeller kan innehålla flera upprepade värden. Till exempel kan en produkt visas flera gånger på flera rader, för olika kunder på olika datum. Dessa värden kan aggregeras för att skapa visuella objekt. Till exempel är ett visuellt objekt av det total antalet säljorder en sammansättning av alla säljorder i faktatabellen. Med faktatabeller är det vanligt att se kolumner som är ifyllda med siffror och datum. Siffrorna kan vara måttenheter, till exempel försäljningsbelopp, eller så kan de vara nycklar, till exempel kund-ID. Datumen representerar den tidpunkt som registreras, till exempel beställningsdatum eller leveransdatum.
Dimensionstabeller innehåller information om data i faktatabeller: produkter, platser, anställda och beställningstyper. Dessa tabeller kopplas till faktatabeller genom nyckelkolumner. Dimensionstabeller används för att filtrera och gruppera data i faktatabeller. Faktatabellerna innehåller å andra sidan mätbara data, till exempel försäljning och intäkter, och varje rad representerar en unik kombination av värden från dimensionstabellerna. För det visuella objektet för totalt antal säljorder kan du gruppera data så att du ser det totala antalet säljorder efter produkt, där produkten är data i dimensionstabellen.
Faktatabeller är mycket större än dimensionstabeller eftersom många händelser inträffar i faktatabeller, till exempel enskild försäljning. Dimensionstabeller är normalt mindre eftersom du är begränsad till antalet objekt som du kan filtrera och gruppera. Ett år innehåller till exempel bara så många månader, och USA består bara av ett visst antal tillstånd.
Med tanke på den här informationen om faktatabeller och dimensionstabeller kanske du undrar hur du kan bygga det visuella objektet i Power BI.
Relevanta data finns i två tabeller, Employee och Sales, som du ser i följande semantikmodell. Eftersom Sales-tabellen innehåller säljordervärden, som kan aggregeras, anses den vara en faktatabell. Employee-tabellen innehåller det specifika namnet på den anställda, som filtrerar säljorder – så tabellen är en dimensionstabell. Det gemensamma värde mellan de två tabellerna, som är primärnyckeln i Employee-tabellen, är EmployeeID, så du kan upprätta en relation mellan de två tabellerna baserat på den här kolumnen.
När du skapar den här relationen kan du skapa det visuella objektet enligt kraven, som du ser i följande bild. Om du inte har upprättat relationen, med tanke på det gemensamma mellan de två tabellerna, skulle du ha svårare att skapa det visuella objektet.
Star-scheman och den underliggande semantikmodellen utgör grunden för organiserade rapporter. Ju mer tid du lägger på att skapa dessa anslutningar och design, desto enklare blir det att skapa och underhålla rapporter.