Långsamt ändra dimensioner (SCD) – typer | datalager

posted in: Articles | 0

långsamt ändra dimensioner: långsamt ändra dimensioner är de dimensioner där data ändras långsamt, snarare än att förändras regelbundet på tidsbasis.
Du kan till exempel ha en kunddimension i en detaljhandelsdomän. Låt säga att kunden är i Indien och varje månad gör han lite shopping. Nu skapar försäljningsrapporten för kunderna är lätt. Anta nu att kunden överförs till USA och han handlar där. Hur spelar man in en sådan förändring i din kunddimension?,
Du kan summera eller genomsnittliga försäljningen gjort av kunderna. I det här fallet kommer du inte att få den exakta jämförelsen av försäljningen gjort av kunderna. När kundlönen ökas efter överföringen, han/hon kan göra mer shopping i USA jämfört med i Indien. Om du summerar den totala försäljningen, då försäljningen görs av kunden kan se starkare även om det är bra. Du kan skapa en andra kundpost och behandla den överförda kunden som ny kund. Men detta kommer att skapa problem också.,
hantering av dessa problem omfattar SCD-förvaltningsmetoder som kallas typ 1 till typ 3. De olika typerna av långsamt föränderliga dimensioner förklaras i detalj nedan.
SCD typ 1: SCD typ 1 metod används när det inte finns något behov av att lagra historiska data i dimensionstabellen. Denna metod skriver över de gamla uppgifterna i dimensionstabellen med de nya uppgifterna. Det används för att korrigera datafel i dimensionen.
som ett exempel har jag kundtabellen med nedanstående data.

surrogate_key customer_id customer_name Location------------------------------------------------1 1 Marspton Illions

här är kundnamnet felstavat., Det borde vara Marston istället för Marspton. Om du använder type1-metoden skriver den bara över data. Uppgifterna i den uppdaterade tabellen kommer att vara.

surrogate_key customer_id customer_name Location------------------------------------------------1 1 Marston Illions

fördelen med type1 är enkel underhåll och mindre utrymme upptaget. Nackdelen är att det inte finns några historiska data i datalagret.
SCD typ 3: i typ 3-metoden bibehålls endast aktuell status och tidigare status för raden i tabellen. För att spåra dessa ändringar skapas två separata kolumner i tabellen., Kunddimensionstabellen i typ 3-metoden kommer att se ut som

surrogate_key customer_id customer_name Current_Location previous_location--------------------------------------------------------------------------1 1 Marston Illions NULL 

låt säga att kunden flyttar från Illions till Seattle och den uppdaterade tabellen kommer att se ut som

surrogate_key customer_id customer_name Current_Location previous_location--------------------------------------------------------------------------1 1 Marston Seattle Illions

Nu igen om kunden flyttar från seattle till NewYork, kommer den uppdaterade tabellen att vara

surrogate_key customer_id customer_name Current_Location previous_location--------------------------------------------------------------------------1 1 Marston NewYork Seattle

typ 3-metoden kommer att ha begränsad historik och det beror på antalet kolumner du skapar.
SCD typ 2: SCD typ 2 lagrar hela historiken data i dimensionstabellen. Med typ 2 kan vi lagra obegränsad historia i dimensionstabellen., I typ 2 kan du lagra data på tre olika sätt. De är

  • versionshantering
  • flaggning
  • effektivt datum

Scd typ 2 versionshantering: i versionsmetoden används ett sekvensnummer för att representera ändringen. Det senaste sekvensnumret representerar alltid den aktuella raden och föregående sekvensnummer representerar tidigare data.
som ett exempel, låt oss använda samma exempel på kund som ändrar platsen. Inledningsvis är kunden i Illions plats och data i dimensionstabellen kommer att se ut.,

surrogate_key customer_id customer_name Location Version--------------------------------------------------------1 1 Marston Illions 1

kunden flyttar från Illions till Seattle och versionsnumret ökas. Dimensionstabellen kommer att se ut som

surrogate_key customer_id customer_name Location Version--------------------------------------------------------1 1 Marston Illions 12 1 Marston Seattle 2

Nu igen om kunden flyttas till en annan plats kommer en ny post att infogas i dimensionstabellen med nästa versionsnummer.
SCD typ 2 Flaggningsmetod: i flaggningsmetod skapas en flaggkolumn i dimensionstabellen. Den aktuella posten kommer att ha flaggvärdet som 1 och de tidigare posterna kommer att ha flaggan som 0.
nu för första gången kommer kunddimensionen att se ut som.,

surrogate_key customer_id customer_name Location flag--------------------------------------------------------1 1 Marston Illions 1

Nu när kunden flyttar till en ny plats kommer de gamla posterna att uppdateras med flaggvärde som 0 och den senaste posten kommer att ha flaggvärdet som 1.

surrogate_key customer_id customer_name Location Version--------------------------------------------------------1 1 Marston Illions 02 1 Marston Seattle 1

SCD Type 2 effektivt datum: i effektiv Datummetod spåras förändringsperioden med hjälp av kolumnerna start_date och end_date i dimensionstabellen.
NULL i End_Date anger den aktuella versionen av data och de återstående posterna anger tidigare data.,
Rekommenderad läsning:
SCD typ 4 – snabbväxande dimension
datalager dimensionell modellering (typer av scheman)
typer av fakta i datalager
typer av dimensioner i datalager
logisk och fysisk Design av datalager
om du gillar den här artikeln, vänligen dela den eller klicka på google +1-knappen.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *