Vad är dimensionsmodellering i Data Warehouse? Lär dig typer
⚡ Smart sammanfattning
Dimensionella modeller i datalagerdesign organiserar information i fakta- och dimensionstabeller så att analytiker snabbt kan hämta och sammanfatta numeriska mått, enligt Kimball-metoden i fem steg som identifierar affärsprocessen, kornigheten, dimensionerna, fakta och det slutliga schemat.

Vad är dimensionsmodellering?
Dimensionell modellering (DM) är en datastrukturteknik optimerad för datalagring i ett datalager. Dess syfte är att finjustera databasen för snabbare hämtning av data. Konceptet utvecklades av Ralph Kimball och är uppbyggt kring två tabelltyper: "fakta"- och "dimensionstabeller".
En dimensionell modell i ett datalager är utformad för att läsa, sammanfatta och analysera numerisk information såsom värden, saldon, antal och vikter. Relationsmodeller är däremot optimerade för att lägga till, uppdatera och ta bort data i ett realtidsbaserat online-transaktionssystem.
Var och en av dessa metoder lagrar data på sitt eget sätt, och var och en erbjuder tydliga fördelar.
I en relationsmodell minskar normalisering och ER-modeller dataredundans. En dimensionsmodell arrangerar istället data så att information är lättare att hämta och rapporter är lättare att generera.
Av denna anledning passar dimensionella modeller datalagring system snarare än transaktionstunga relationella system. Eftersom modellen ligger till grund för det bredare datalagerarkitektur, avsnitten nedan bryter ner dess element, typer och designsteg.
Element i dimensionsdatamodellen
Faktum
Fakta är de mätvärden eller mätvärden som hämtas från en affärsprocess. I en försäljningsprocess är till exempel kvartalsförsäljningssiffran ett faktum – det numeriska värde som företaget vill analysera.
Dimensionera
En dimension ger sammanhanget kring en affärsprocesshändelse. Enkelt uttryckt ger dimensioner information om vem, vad och var för ett faktum. För faktumet "kvartalsförsäljningssiffra" skulle dimensionerna vara:
- Vem – Kundnamn
- Var – Plats
- Vad – Produktnamn
Med andra ord är en dimension ett fönster genom vilket du ser informationen som finns i fakta.
attribut
Attribut är de olika egenskaperna hos en dimension inom en dimensionell datamodell.
I en platsdimension kan attributen vara:
- Ange
- Land
- Postnummer
Attribut används för att söka, filtrera och klassificera fakta, och dimensionstabeller är där dessa attribut finns.
Faktatabell
En faktatabell är den primära tabellen i en dimensionell modell.
En faktatabell innehåller:
- Mätningar eller fakta
- Främmande nycklar till dimensionstabeller
Måttbord
En dimensionstabell innehåller dimensionerna för ett faktum och kopplas till faktatabellen via en främmande nyckel. Dess huvudsakliga egenskaper listas nedan:
- Dimensionstabeller är avnormaliserade tabeller.
- Dimensionsattributen bildar tabellens kolumner.
- Dimensioner erbjuder beskrivande egenskaper hos fakta genom deras attribut.
- Det finns ingen fast gräns för antalet dimensioner.
- En dimension kan innehålla en eller flera hierarkiska relationer.
Typer av dimensioner i Data Warehouse
Dimensionell modellering använder flera typer av dimensioner, var och en anpassad till ett specifikt designbehov. Det viktigaste typer av dimensioner i ett datalager är:
- Anpassad dimension
- Stödbensdimension
- Krympt dimension
- Rollspelsdimension
- Dimension till dimensionstabell
- Skräpdimension
- Degenererad dimension
- Bytbar dimension
- Steg Dimension
Steg för dimensionsmodellering
Noggrannheten i din dimensionella modellering avgör hur framgångsrik implementeringen av datalagret blir. Det finns fem steg för att bygga en dimensionell modell:
- Identifiera affärsprocessen
- Identifiera kornigheten (detaljnivå)
- Identifiera dimensionerna
- Identifiera fakta
- Bygg schemat
Sammantaget bör den färdiga modellen beskriva varför, hur mycket, när, var, vem och vad i er affärsprocess.
Steg 1) Identifiera affärsprocessen
Den första uppgiften är att identifiera den affärsprocess som lagret ska omfatta – marknadsföring, försäljning, HR och så vidare – baserat på organisationens dataanalys behov och kvaliteten på tillgängliga data. Detta är det viktigaste steget, eftersom ett misstag här skapar kaskadliknande, svåråtgärdade fel.
För att beskriva affärsprocessen kan du använda vanlig text, Business Process Modelling Notation (BPMN) eller Unified Modelling Language (UML).
Steg 2) Identifiera säden
Kornigheten definierar detaljnivån för affärsproblemet – den lägsta informationsnivån som lagras i en tabell.
Om en tabell innehåller försäljning för varje dag har den daglig granularitet; om den innehåller månatliga totalsummor har den månatlig granularitet.
Under detta skede svarar du på frågor som:
- Ska lagret lagra alla tillgängliga produkter eller bara ett fåtal produkttyper? Detta beror på vilka affärsprocesser som valts.
- Ska produktförsäljning lagras månadsvis, veckovis, dagligen eller timvis? Detta beror på vad cheferna begär i rapporterna.
- Hur påverkar dessa två val databasens storlek?
Exempel på spannmål: Tänk dig att VD:n för ett multinationellt företag vill se försäljningen av specifika produkter på olika platser, mätt varje dag.
I det scenariot blir spannmålen ”information om produktförsäljning per plats och dag”.
Steg 3) Identifiera måtten
Dimensioner är substantiv som datum, butik och lager, och de innehåller beskrivande data.
Till exempel kan en datumdimension innehålla ett år, en månad och en veckodag.
Exempel på dimensioner: Samma dagliga försäljningskrav styr valet av dimensioner.
För det här scenariot är dimensionerna Produkt, Plats och Tid.
Produktdimensionen innehåller attribut som produktnyckel (en främmande nyckel), namn, typ och specifikationer.
Platsdimensionen är organiserad som en hierarki: land, delstat, stad, gatuadress och namn.
Steg 4) Identifiera fakta
Detta steg är nära kopplat till systemets affärsanvändare, eftersom det definierar de siffror de förbrukar från datalagret.
De flesta faktatabellrader är numeriska värden som pris eller kostnad per enhet.
Exempel på fakta: Det dagliga försäljningskravet sätter återigen sammanhanget.
Här är faktum summan av försäljningen per produkt, per plats och per tid.
Steg 5) Bygg schema
I detta sista steg implementerar du den dimensionella modellen. Ett schema är helt enkelt databasstrukturen – arrangemanget av tabeller – och två scheman är särskilt vanliga.
Den första är stjärnschema, som är enkel att designa och namngiven efter sin form: en central faktatabell med dimensionstabeller som strålar utåt likt spetsarna på en stjärna.
I ett stjärnschema är faktatabellen i tredje normalform medan dimensionstabellerna är avnormaliserade; detta stjärnschema i datalagermodellering guiden fungerar genom ett komplett exempel.
Den andra är snöflingaschema, en utvidgning av stjärnschemat där varje dimension är normaliserad och länkad till ytterligare dimensionstabeller, vilket förklaras i detta snöflingeschema i datalagermodell guide.
Regler för dimensionsmodellering
Följande regler och principer vägleder effektiv dimensionsmodellering:
- Ladda in atomära data i dimensionsstrukturerna.
- Bygg dimensionella modeller kring affärsprocesser.
- Se till att varje faktatabell har en tillhörande datumdimensionstabell.
- Håll alla fakta i en enda faktatabell med samma kornighet eller detaljnivå.
- Lagra rapportetiketter och filtrera domänvärden i dimensionstabellerna.
- Ge varje dimensionstabell en surrogatnyckel.
- Balansera ständigt krav med verklighet för att leverera en lösning som stödjer affärsbeslutsfattandet.
Fördelar med dimensionsmodellering
Dimensionell modellering erbjuder ett antal praktiska fördelar:
- Standardiserade dimensioner möjliggör enkel och konsekvent rapportering över olika delar av verksamheten.
- Dimensionstabeller lagrar historiken för dimensionsinformationen.
- Nya dimensioner kan introduceras utan större störningar i faktatabellen.
- Data lagras så att den är lättare att hämta när den väl finns i databasen.
- Jämfört med den normaliserade modellen är dimensionstabeller lättare att förstå eftersom informationen är grupperad i tydliga affärskategorier.
- Modellen är baserad på affärstermer, så företaget vet vad varje faktum, dimension eller attribut betyder.
- Eftersom modellen är avnormaliserad är den optimerad för snabba frågor, och många relationsplattformar optimerar sina exekveringsplaner för den.
- Schemat levererar hög prestanda med färre kopplingar och minimerad dataredundans.
- Dimensionsmodeller hanterar enkelt ändringar, eftersom kolumner kan läggas till i dimensionstabeller utan att påverka befintliga Business Intelligence-applikationer.
Vad är multidimensionell datamodell i Data Warehouse?
A flerdimensionell datamodell representerar data som datakuber, vilket låter dig modellera och visa data över flera dimensioner definierade av dimensioner och fakta. En sådan modell är vanligtvis organiserad kring ett centralt tema och representeras av en faktatabell, och den utgör grunden för OLAP analys.

