v dnešním článku bych se chtěl zaměřit na pomalu se měnící rozměr, aka SCD. Dimension je slovo výňatek z datových skladů jako takových. Ne bez důvodu se SCD používá velmi často z hlediska témat datového skladu (DW) a lze jej použít pro účely auditu v systémech OLTP.

cílem článku je přezkoumat typy pomalu se měnícího rozměru, protože existuje jen málo verzí.

data se v průběhu času mění., Možná se nestaráte o historickou verzi dat v databázi OLTP, ale může to být obchodní požadavek, aby byly zachovány všechny historické změny. Jinými slovy, musíte být schopni ukázat v prodejní zprávě správný regionální úřad prodejní osoby, bez ohledu na to, kdy osoba změnila region. V takovém případě musíme data uchovávat před změnou a po aktualizaci.

jak transformace fungují?

existuje jen málo typů SCD.

V závislosti na typu SCD si můžete ponechat žádné, jednu nebo více historických změn řádků.,
myšlenka je jednoduchá: pokaždé, když se řádek mění, bude stará verze (před aktualizací nebo odstraněním) řádku uložena v tabulce SCD.
implementace těchto věcí není vždy snadná. Podívejme se na příklady.

Jako příklad zdrojových dat budu používat následující údaje řádek:

SCD Zdroj dat příklad

Ve výše uvedeném příkladu CustomerId je primární klíč v zdroj (OLTP) databází.,
Jsme zavést náhradní klíč (CustomerKey) v DW, aby se zabránilo zdvojování původní Kódzákazníka a optimalizovat výkon, zejména pokud zdrojový systém se používá znak nebo komplex klíče.

SCD dat v datovém Skladu příklad

SCD Typ 0

Tento typ nemá žádné změny atributů. Udržuje pouze původní hodnotu bez jakýchkoli změn. Používá se hlavně pro atributy, které nelze změnit, jako datum narození.,

Typ SCD 1: přepsání historie atributu

tato metoda nemůže sledovat změny v datech a přepíše stará data novými. Jakmile náš zákaznický změně jeho adresy, nová adresa by přepsat:

SCD Typu 1,

Jak můžete vidět – je to velmi jednoduché implementovat a udržovat proces – je to jednoduché aktualizace. V jiných rukou je nevýhodou tohoto přístupu nedostatek historie row v datovém skladu.,

SCD typ 2: Přidání nových řádků

metodika zachovává historii přidáním nových řádků a neexistuje žádný limit pro počet změn.,iv id=“f3da287bb9″>

SCD Typu 2,

kromě toho, můžete se rozhodnout, jakým způsobem chcete vědět, starší řádků o zachování současné vlajky sloupci a/nebo UpdateDate:

SCD Typu 2 s stávající vlajku,

nebo verze řádku, který bude zvýšen postupně:

SCD Typu 2 s verzí

SCD Typ 3: další historická sloupce

V tomto přístupu můžete spravovat omezené množství historii přidáním dalších sloupců, pro sledování atributy.,
Chcete-li mít předchozí a aktuální město zákazníka, můžete implementovat sloupce: PreviousCity a CurrentCity. V databázi datového skladu (DW) na zdrojovou databázi bude pouze jeden řádek, Proto typ 3 má omezenou použitelnost a je méně populární než typ 1 a 2.

SCD Typ 3

musíte být opatrní, pokud chcete použít Typ 3 SCD. Ujistěte se, že obchodní analytik a/nebo váš zákazník jsou si vědomi omezení historie.,

SCD Typ 4: samostatná Historická tabulka

Tento typ používá samostatné tabulky pro vedení aktuálních záznamů a historických změn. To stojí za to používat, když:
• Rozměr se mění docela často, nebo
• Rozměr je multi-milión řádků tabulky.

SCD Typ 4 aktuální tabulky

SCD Typ 4 – historické tabulce

Margy Ross z Kimball Skupinová volání takové tabulky jako „mini-rozměr“.,

Typ SCD 6:

tento přístup je číslován jako 6 jako 1+2+3=6 stejně 1x2x3=6. Proto je kombinace těchto tří typů:
• Mějte obě předchozí a aktuální hodnoty pro atribut (jako Typ 3, podívejte se na sloupcích: „HistoricCity“, „CurrentCity“)
• Přepíše všechny záznamy pro aktuální verzi atribut (jako Typ 1, podívejte se na sloupec „CurrentCity“)
• Uchovává historické verze atribut (jako Typ 2, vypadají jako sloupce: „IsCurrent“, „Počátečnídatum“, „EndDate“)
Pojďme se podívat, jak řadě je měněn a jak jeho vliv na DW., První načítání řádku:

SCD Typ 6 (krok 1)

Řádků v DW je Zákazník tabulka po prvním zákazníkem, přemístění:

SCD Typ 6 (krok 2)

Řádků v DW Zákazníka následující tabulce druhý zákazník přemístění:

SCD Typ 6 (krok 3)

, Který Typ si mám vybrat?,

jako profesionální konzultant odpovídám profesionálně:

záleží

zeptejte se svého obchodního týmu, obchodní analytiky nebo vašeho zákazníka: co potřebují v datovém skladu.
možná jsem to neřekl dostatečně nahlas, ale ve stejné tabulce můžete do každého sloupce použít různé typy SCD.
například: typ 2 do sloupce města, typ 1 do sloupce Datum narození. Vše ve stejné tabulce.
proto je požádejte o každou dimenzi:
• které atributy jsou konstantní,
* které atributy jsou proměnné?,
* které atributy by měly být plně sledovány, které by měly zachovat pouze předchozí a aktuální verzi?
* kolik řádků je v tabulce právě teď / se očekává v příštích 10 letech?
uchovávejte tyto odpovědi jako důkaz. Lidé, zejména zákazníci, rádi mění názor. Víš, co tím myslím.
Pokud si stále nejste jisti, který z nich má být vybrán, nezapomeňte, že:

udržování historie změn je pro vás dobré

jednoduše proto, že se požadavky mohou změnit.
vedle typů 0 a 1 jsou podle mého názoru nejoblíbenější typ 2 a typ 4.

jak načíst data do SCD?,

dobrá otázka. Ale toto téma je úplně jiný příběh.
než o tom připravím další příspěvek – podívejte se na tento nástroj:
Scd Merge Wizard
nástroj vám pomůže vytvořit, spravovat a udržovat mapování mezi zdrojovou databází(např. Navíc s tímto přístupem budete používat příkaz sloučení k provádění operací načítání pomocí nakonfigurovaného typu SCD pro každý sloupec.
v dalších příspěvcích vysvětlím, jak v tomto nástroji použít různé typy SCD.

hodně štěstí s loadings,
Kamil