pomalu se měnící rozměry (SCD)-rozměry, které se v průběhu času mění pomalu, spíše než se mění podle pravidelného rozvrhu, časové základny. V datovém skladu je třeba sledovat změny v atributech dimenzí, aby bylo možné hlásit Historická data. Jinými slovy, implementace jednoho z typů SCD by měla uživatelům umožnit přiřazení hodnoty atributu správné dimenze pro dané datum. Příkladem takových rozměrů může být: zákazník, zeměpis, zaměstnanec.,
existuje mnoho přístupů, jak se vypořádat s SCD. Nejvíce populární jsou:
- Typ 0 – pasivní metoda
- Typ 1 – Přepsáním staré hodnoty
- Typ 2 – Vytvoření nové další záznam
- Typ 3 – Přidání nového sloupce
- Typ 4 – s Využitím historické tabulky
- Typ 6 – Kombinovat přístupy typy 1,2,3 (1+2+3=6)
Zadejte 0 – pasivní metody. V této metodě se při rozměrových změnách neprovádí žádná zvláštní akce. Některá rozměrová data mohou zůstat stejná jako při prvním vložení, jiná mohou být přepsána.,
typ 1-přepsání staré hodnoty. V této metodě není v databázi uložena žádná historie změn dimenzí. Stará hodnota dimenze je jednoduše přepsána jako nová. Tento typ se snadno udržuje a často se používá pro data, která jsou způsobena změnami zpracování (např. odstranění speciálních znaků, Oprava pravopisných chyb).,
Před změnou:
Dvě | Customer_Name | Customer_Type |
---|---|---|
1 | Cust_1 | Firemní |
Po změně:
Dvě | Customer_Name | Customer_Type |
---|---|---|
1 | Cust_1 | Maloobchodní |
Typ 2 – Vytvoření nové další rekord., V této metodice je veškerá historie změn dimenzí uložena v databázi. Zachyťte změnu atributů přidáním nového řádku s novým náhradním klíčem do tabulky dimenzí. Oba předchozí a nové řádky obsahují jako atributy přírodní klíč (nebo jiný odolný identifikátor). V této metodě se používají také sloupce „Datum účinnosti“ a „aktuální indikátor“. Mohl by existovat pouze jeden záznam s aktuálním indikátorem nastaveným na „Y“. Pro sloupce „Datum účinnosti“, tj. start_date a end_date, je end_date pro aktuální záznam obvykle nastaven na hodnotu 9999-12-31., Zavedení změn rozměrového modelu v typu 2 by mohlo být velmi nákladné, takže se nedoporučuje používat jej v rozměrech, kde by mohl být v budoucnu přidán nový atribut.,
Před změnou:
Dvě | Customer_Name | Customer_Type | Začátek | End_Date | Current_Flag |
---|---|---|---|---|---|
1 | Cust_1 | Firemní | 22-07-2010 | 31-12-9999 | Y |
Po změně:
Typ 3 – Přidání nového sloupec. V tomto typu se obvykle v databázi uchovává pouze aktuální a předchozí hodnota dimenze., Nová hodnota se načte do sloupce „aktuální/nový“ a stará do sloupce „Starý/předchozí“. Obecně řečeno, historie je omezena na počet sloupců vytvořených pro ukládání historických dat. To je nejméně běžně potřebná technika.,iv id=“2f5bdb6350″>
Po změně:
Dvě | Customer_Name | Current_Type | Previous_Type |
---|---|---|---|
1 | Cust_1 | Maloobchodní | Firemní |
Typ 4 – s Využitím historické tabulky., V této metodě se používá samostatná Historická tabulka pro sledování všech atributů dimenze historické změny pro každou dimenzi. Tabulka „hlavní“ dimenze uchovává pouze aktuální data, např. tabulky zákazníků a customer_history.
Aktuální tabulky:
Dvě | Customer_Name | Customer_Type |
---|---|---|
1 | Cust_1 | Firemní |
Historické tabulce:
Typ 6 – Kombinovat přístupy typy 1,2,3 (1+2+3=6)., V tomto typu máme v tabulce dimenzí takové další sloupce jako:
- current_type-pro udržení aktuální hodnoty atributu. Všechny záznamy Historie pro danou položku atributu mají stejnou aktuální hodnotu.
- historical_type – pro zachování historické hodnoty atributu. Všechny záznamy Historie pro danou položku atributu mohou mít různé hodnoty.
- start_date-pro udržení data zahájení „data účinnosti“ historie atributu.
- end_date-pro udržení data ukončení „data účinnosti“ historie atributu.,
- current_flag – pro uchovávání informací o posledním záznamu.
v této metodě pro zachycení změny atributů přidáme nový záznam jako v typu 2. Current_type informace jsou přepsány s novým jako v typu 1. Historii uchováváme v historickém_column jako v typu 3.