Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Omstrukturering af flade data til relationelle tabeller | Dataklargøring
Excel-datamodellering

Omstrukturering af flade data til relationelle tabeller

Stryg for at vise menuen

Et bredt, fladt ark er en enkelt tabel, der indeholder alle oplysninger om hver begivenhed — kundedetaljer, produktdetaljer, datoer og transaktionsværdier findes alle ét sted. Det er let at læse, men kan ikke understøtte en relationel datamodel.

Problemet med gentagelse: hver ordre for Acme Corp gentager kundenavn, region og segment. Hvis disse oplysninger ændres, skal hver række opdateres individuelt — hvilket fører til inkonsistens og unødvendigt stor lagerplads.

Note
Bemærk

Projektmappen, der bruges i videoen, er forskellig fra projektmappen, der bruges i opgaven. Hvis du vil følge instruktøren trin for trin under lektionen, skal du downloade videoprojektmappen, som findes under videoen, før du starter.

Trin 1 — Identificer og udtræk dimensionstabeller

Dimensionstabeller beskriver hvem, hvad og hvornår for hver begivenhed. Start med dem, da deres afgrænsninger normalt er de tydeligste. Hver række skal være unik — fjern dubletter efter indsættelse.

  • Customers table: CustomerID (PK), CustomerName, Region, Segment;
  • Products table: ProductID (PK), ProductName, Category;
  • Dates table: Date (PK), Year, Month (number), Month name, Quarter.
Note
Bemærk

Hvorfor skal datotabellen dække hele året?

Tidsintelligensberegninger (år-til-dato, glidende gennemsnit, periode-sammenligninger) kræver en kontinuerlig, sammenhængende kalender uden huller. Hvis tabellen kun indeholder ordredatoer, mangler måneder uden salg helt, og beregningerne fejler.

Trin 2 — Opret faktatabellen

Faktatabellen registrerer, hvad der er sket — én række pr. begivenhed. Den gemmer målbare værdier og de fremmednøgler, der forbinder hver begivenhed til dens dimensionstabeller. Den indeholder bevidst ingen beskrivende tekst.

  • Sales (fact table): OrderID (PK), OrderDate → Dates (FK), CustomerID → Customers (FK), ProductID → Products (FK), UnitPrice, Quantity, Total.
Note
Bemærk
  • PK — Primærnøgle (en entydig identifikator for hver post i en tabel);
  • FK — Fremmednøgle (et felt, der linker til en primærnøgle i en anden tabel).

Stjerneskema

De fire tabeller danner et stjerneskema: faktatabellen er placeret i midten, og dimensionstabellerne stråler ud fra den, hver forbundet med et primærnøgle-/fremmednøgle-par.

Opgave

  1. Farvekod kolonnerne i det brede, flade ark efter destination: kunder (blå), produkter (orange), datoer (grøn), faktaværdier (gul);
  2. Kopiér hver farvegruppe til et nyt ark. Konvertér området til en navngivet Excel-tabel (Insert → Table);
  3. Vælg kolonnen med primærnøglen og brug Data → Remove Duplicates for at sikre, at hver række er unik.
  4. For datotabellen udvides datokolonnen, så den dækker hver dag fra 1. januar til 31. december, og tilføj derefter kolonnerne Year, Month, Month Name og Quarter ved hjælp af =YEAR(), =MONTH(), =TEXT(B2, "MMMM") og kvartalsformlen ="Q"&INT((MONTH(B2)-1)/3+1).
  5. Indsæt datobladet som kun værdier (uden formler) i et tomt ark, før det konverteres til en tabel.
  6. Byg faktatabellen ud fra de resterende kolonner samt de tre fremmednøgler (OrderDate, CustomerID, ProductID).

1. Hvad er de vigtigste fordele ved at refaktorere et fladt ark til en faktatabel plus dimensioner? (Vælg to)

2. Når du opretter en Customers-dimension ud fra en flad tabel, hvilket trin er essentielt?

question mark

Hvad er de vigtigste fordele ved at refaktorere et fladt ark til en faktatabel plus dimensioner? (Vælg to)

Vælg alle korrekte svar

question mark

Når du opretter en Customers-dimension ud fra en flad tabel, hvilket trin er essentielt?

Vælg det korrekte svar

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 4

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 2. Kapitel 4
some-alt