Hva er dimensjonsmodellering i datavarehus? Lær typer
⚡ Smart oppsummering
Dimensjonsmodeller i datavarehusdesign organiserer informasjon i fakta- og dimensjonstabeller, slik at analytikere raskt kan hente og oppsummere numeriske målinger. De følger Kimball-metoden i fem trinn, som identifiserer forretningsprosessen, kornet, dimensjonene, faktaene og det endelige skjemaet.

Hva er dimensjonsmodellering?
Dimensjonsmodellering (DM) er en datastrukturteknikk optimalisert for datalagring i et datavarehus. Hensikten er å finjustere databasen for raskere henting av data. Konseptet ble utviklet av Ralph Kimball og er bygget rundt to tabelltyper: «fakta»- og «dimensjonstabeller».
En dimensjonsmodell i et datavarehus er utformet for å lese, oppsummere og analysere numerisk informasjon som verdier, saldoer, antall og vekter. Relasjonsmodeller er derimot optimalisert for å legge til, oppdatere og slette data i et sanntids online transaksjonsbehandlingssystem.
Hver av disse tilnærmingene lagrer data på sin egen måte, og hver av dem tilbyr forskjellige fordeler.
I en relasjonsmodell reduserer normalisering og ER-modeller dataredundans. En dimensjonsmodell arrangerer i stedet data slik at informasjon er enklere å hente og rapporter er enklere å generere.
Av denne grunn passer dimensjonsmodeller datavarehus systemer snarere enn transaksjonstunge relasjonssystemer. Fordi modellen underbygger den bredere datavarehusarkitektur, avsnittene nedenfor bryter ned elementene, typene og designtrinnene.
Elementer i dimensjonsdatamodellen
Faktum
Fakta er målinger eller beregninger hentet fra en forretningsprosess. I en salgsprosess er for eksempel kvartalsvise salgstall et faktum – den numeriske verdien bedriften ønsker å analysere.
Dimensjon
En dimensjon gir konteksten rundt en forretningsprosesshendelse. Enkelt sagt gir dimensjoner hvem, hva og hvor et faktum er. For faktumet «kvartalsvis salgstall» ville dimensjonene være:
- Hvem – Kundenavn
- Hvor – Plassering
- Hva – Produktnavn
Med andre ord er en dimensjon et vindu der du ser informasjonen som finnes i fakta.
attributter
Attributter er de ulike egenskapene til en dimensjon innenfor en dimensjonal datamodell.
I en lokasjonsdimensjon kan attributtene være:
- Tilstand
- Land
- Post kode
Attributter brukes til å søke, filtrere og klassifisere fakta, og dimensjonstabeller er der disse attributtene finnes.
Faktatabell
En faktatabell er den primære tabellen i en dimensjonsmodell.
En faktatabell inneholder:
- Målinger eller fakta
- Fremmednøkler til dimensjonstabeller
Dimensjonstabell
En dimensjonstabell inneholder dimensjonene til et faktum og kobles til faktatabellen via en fremmednøkkel. Hovedkarakteristikkene er listet opp nedenfor:
- Dimensjonstabeller er de-normaliserte tabeller.
- Dimensjonsattributtene danner kolonnene i tabellen.
- Dimensjoner tilbyr beskrivende egenskaper ved fakta gjennom deres attributter.
- Det er ingen fast grense for antall dimensjoner.
- En dimensjon kan inneholde ett eller flere hierarkiske forhold.
Typer dimensjoner i datavarehus
Dimensjonsmodellering bruker flere typer dimensjoner, som hver er egnet for et bestemt designbehov. Hoveddelen typer dimensjoner i et datavarehus er:
- Tilpasset dimensjon
- Utrigger dimensjon
- Krympet dimensjon
- Rollespilldimensjon
- Dimensjon til dimensjonstabell
- Søppeldimensjon
- Degenerert dimensjon
- Byttbar dimensjon
- Trinndimensjon
Trinn for dimensjonsmodellering
Nøyaktigheten til dimensjonsmodelleringen din avgjør hvor vellykket implementeringen av datalageret blir. Det er fem trinn for å bygge en dimensjonsmodell:
- Identifiser forretningsprosessen
- Identifiser kornet (detaljnivå)
- Identifiser dimensjonene
- Identifiser faktaene
- Bygg skjemaet
Alt i alt bør den ferdige modellen beskrive hvorfor, hvor mye, når, hvor, hvem og hva i forretningsprosessen din.
Trinn 1) Identifiser forretningsprosessen
Den første oppgaven er å identifisere forretningsprosessen lageret skal dekke – markedsføring, salg, HR og så videre – basert på organisasjonens dataanalyse behov og kvaliteten på tilgjengelige data. Dette er det viktigste trinnet, fordi en feil her produserer kaskader av feil som er vanskelige å fikse.
For å beskrive forretningsprosessen kan du bruke ren tekst, Business Process Modelling Notation (BPMN) eller Unified Modelling Language (UML).
Trinn 2) Identifiser kornet
Kornet definerer detaljnivået for forretningsproblemet – det laveste informasjonsnivået som er lagret i en hvilken som helst tabell.
Hvis en tabell inneholder salg for hver dag, har den daglig granularitet. Hvis den inneholder månedlige totaler, har den månedlig granularitet.
I løpet av denne fasen svarer du på spørsmål som:
- Skal lageret lagre alle tilgjengelige produkter eller bare noen få produkttyper? Dette avhenger av de valgte forretningsprosessene.
- Bør produktsalg lagres månedlig, ukentlig, daglig eller timevis? Dette avhenger av rapportene lederne ber om.
- Hvordan påvirker disse to valgene databasestørrelsen?
Eksempel på korn: Tenk deg at administrerende direktør i et multinasjonalt selskap ønsker å se salget av spesifikke produkter på tvers av forskjellige steder, målt hver dag.
I det scenariet blir kornet til «produktsalgsinformasjon per sted per dag».
Trinn 3) Identifiser dimensjonene
Dimensjoner er substantiver som dato, butikk og lagerbeholdning, og de inneholder de beskrivende dataene.
For eksempel kan en datodimensjon inneholde et år, en måned og en ukedag.
Eksempel på dimensjoner: Det samme daglige salgskravet styrer valget av dimensjoner.
For dette scenariet er dimensjonene Produkt, Sted og Tid.
Produktdimensjonen inneholder attributter som produktnøkkel (en fremmednøkkel), navn, type og spesifikasjoner.
Stedsdimensjonen er organisert som et hierarki: land, stat, by, gateadresse og navn.
Trinn 4) Identifiser faktaene
Dette trinnet er nært knyttet til systemets forretningsbrukere, fordi det definerer tallene de forbruker fra datalageret.
De fleste faktatabellradene er numeriske verdier som pris eller kostnad per enhet.
Eksempel på fakta: Det daglige salgskravet setter igjen konteksten.
Her er faktum summen av salg per produkt, per sted og per tid.
Trinn 5) Bygg skjema
I dette siste trinnet implementerer du dimensjonsmodellen. Et skjema er rett og slett databasestrukturen – arrangementet av tabeller – og to skjemaer er spesielt vanlige.
Den første er stjerneskjema, som er enkel å designe og oppkalt etter formen: en sentral faktatabell med dimensjonstabeller som stråler utover som stjernespissene.
I et stjerneskjema er faktatabellen i tredje normalform, mens dimensjonstabellene er denormaliserte; dette stjerneskjema i datavarehusmodellering Guiden fungerer gjennom et komplett eksempel.
Den andre er snøfnuggskjema, en utvidelse av stjerneskjemaet der hver dimensjon er normalisert og koblet til ytterligere dimensjonstabeller, som forklart i denne snøfnuggskjema i datavarehusmodell guide.
Regler for dimensjonsmodellering
Følgende regler og prinsipper veileder effektiv dimensjonsmodellering:
- Last inn atomdata i dimensjonsstrukturene.
- Bygg dimensjonsmodeller rundt forretningsprosesser.
- Sørg for at hver faktatabell har en tilknyttet datodimensjonstabell.
- Hold alle fakta i én faktatabell med samme kornstørrelse eller detaljnivå.
- Lagre rapportetiketter og filtrer domeneverdier i dimensjonstabellene.
- Gi hver dimensjonstabell en surrogatnøkkel.
- Kontinuerlig balansere krav og realiteter for å levere en løsning som støtter forretningsbeslutninger.
Fordeler med dimensjonsmodellering
Dimensjonsmodellering tilbyr en rekke praktiske fordeler:
- Standardiserte dimensjoner muliggjør enkel og konsistent rapportering på tvers av virksomhetens områder.
- Dimensjonstabeller lagrer historien til dimensjonsinformasjonen.
- Nye dimensjoner kan introduseres uten vesentlig forstyrrelse av faktatabellen.
- Data lagres slik at det er enklere å hente frem dem når de først er i databasen.
- Sammenlignet med den normaliserte modellen er dimensjonstabeller enklere å forstå fordi informasjonen er gruppert i tydelige forretningskategorier.
- Modellen er basert på forretningsbegreper, slik at virksomheten vet hva hvert faktum, hver dimensjon eller hvert attributt betyr.
- Fordi modellen er denormalisert, er den optimalisert for rask spørring, og mange relasjonsplattformer optimaliserer utførelsesplanene sine for den.
- Skjemaet leverer høy ytelse med færre koblinger og minimert dataredundans.
- Dimensjonsmodeller håndterer endringer enkelt, siden kolonner kan legges til dimensjonstabeller uten å påvirke eksisterende forretningsintelligensapplikasjoner.
Hva er multidimensjonal datamodell i datavarehus?
A flerdimensjonal datamodell representerer data som datakuber, slik at du kan modellere og vise data på tvers av flere dimensjoner definert av dimensjoner og fakta. En slik modell er vanligvis organisert rundt et sentralt tema og representert av en faktatabell, og den danner grunnlaget for OLAP analyse.

