a mai cikkben szeretnék összpontosítani lassan változó dimenzió, más néven SCD. Dimenzió Egy szó részlet Adattárolás, mint olyan. Nem ok nélkül az SCD-t nagyon gyakran használják az adattárház (DW) témakörökben, és audit célokra is felhasználhatók az OLTP rendszerekben.

a cikk célja, hogy áttekintse a lassan változó dimenzió típusát, mivel kevés változata van.

az adatok idővel változnak., Lehet, hogy nem érdekli az adatok történelmi verziója az OLTP adatbázisban, de lehet, hogy üzleti követelmény az összes történelmi változás fenntartása érdekében. Más szavakkal, képesnek kell lennie arra, hogy egy értékesítési jelentésben megmutassa az értékesítési személy helyes regionális irodáját, függetlenül attól, hogy a személy megváltoztatta-e a régiót. Ebben az esetben meg kell őriznünk az adatokat a módosítás előtt és a frissítés után.

hogyan működnek az átalakítások?

kevés típusú SCD létezik.

az SCD típustól függően a sorok egy vagy több történelmi változását is megtarthatja.,
Az ötlet egyszerű: minden alkalommal, amikor a sor változik, a sor régi verzióját (frissítés vagy törlés előtt) az SCD táblázatban tartják.
ezeknek a dolgoknak a végrehajtása nem mindig könnyű. Vessünk egy pillantást a példákra.

a forrásadatok példájaként a következő adatsorokat fogom használni:

SCD forrásadatok példa

a fenti példában a CustomerId egy elsődleges kulcs a forrás (OLTP) adatbázisban.,
a helyettesítő kulcsot (CustomerKey) a DW-ben vezetjük be az eredeti CustomerId duplikációjának elkerülése, valamint a teljesítmény optimalizálása érdekében, különösen akkor, ha a forrásrendszer karakteres vagy összetett kulcsokat használ.

SCD data in Data Warehouse example

SCD Type 0

Ez a típus nem tartalmaz attribútumváltozásokat. Csak az eredeti értéket tartja változtatás nélkül. Főleg olyan attribútumokhoz használták, amelyeket nem lehet megváltoztatni, mint például a születési dátum.,

SCD Type 1: egy

attribútum előzményeinek felülírása ez a módszer nem tudja nyomon követni az adatok változásait, és felülírja a régi adatokat újakkal. Miután ügyfelünk megváltoztatta a címét, az új cím felülírja:

SCD Type 1

mint látható – nagyon egyszerű a folyamat végrehajtása és fenntartása – egyszerű frissítés. Más szempontból ennek a megközelítésnek a hátránya, hogy nincs row története az adattárházban.,

SCD Type 2: új sorok hozzáadása

a módszer új sorok hozzáadásával megőrzi a történelmet, és nincs korlátozva a változások száma.,iv id=”f3da287bb9″>

SCD Típus 2

ezen Felül, akkor lehet eldönteni, hogy melyik úton akarsz tudni idősebb sor fenntartani a jelenlegi zászló oszlop és/vagy UpdateDate:

SCD 2-es Típusú a jelenlegi zászló

vagy változata sor, amely kerül növekszik sorrendben:

SCD 2-es Típusú verzió

SCD 3-as Típus: kiegészítő történelmi oszlop

ebben A megközelítésben kezelni egy korlátozott mennyiségű történelem hozzáadásával, további oszlopok követési tulajdonságai.,
A korábbi és a jelenlegi ügyfélvárost szeretné megvalósítani: PreviousCity és CurrentCity. Forrásadatbázisonként csak egy sor lesz az adattárházban (DW), ezért a 3-as típus korlátozott használhatósággal rendelkezik, és kevésbé népszerű, mint az 1-es és a 2-es típus.

SCD Type 3

óvatosnak kell lennie, ha az SCD 3.típusát szeretné használni. Győződjön meg arról, hogy az üzleti elemző és/vagy ügyfele tisztában van a történelem korlátaival.,

SCD Type 4: külön történelmi táblázat

Ez a típus külön táblákat használ az aktuális rekordok és történelmi változások megtartásához. Érdemes használni, ha:
• dimenzió változik elég gyakran, vagy
• dimenzió több millió sorok táblázat

SCD Type 4 jelenlegi táblázat

SCD Type 4-történelmi táblázat

Margy Ross a Kimball csoportból olyan táblákat hív, mint a “mini – dimenzió”.,

SCD Type 6:

Ez a megközelítés 6-ként van számozva 1+2+3=6 is 1x2x3=6. Ezért ezek kombinációja három típusa van:
• Tartani mind a korábbi, mind a jelenlegi értékek attribútum (3-as Típus, nézd oszlopok: “HistoricCity”, “CurrentCity”)
• Felülírja az összes rekordot, aktuális változata attribútum (mint az 1-es Típusú, nézd oszlop “CurrentCity”)
• Tartja történelmi változata attribútum (mint a 2-es Típusú, nézd, mint oszlopok: “IsCurrent”, “üzenő startdate”, “EndDate”)
nézzük meg, hogy a sor, hogy megváltozott, hogy a befolyásolja a DW., Az első terhelés a sor:

SCD Típus 6 (step 1)

Sorok DW Ügyfél táblázat következő első ügyfél áthelyezése:

SCD Típus 6 (2. lépés)

Sorok DW Ügyfél táblázat következő második ügyfél áthelyezés:

SCD Típus 6 lépésben (3)

Melyik kell, azt választás?,

szakmai tanácsadóként szakmailag válaszolok:

ez függ

kérdezze meg üzleti csapatát, üzleti elemzését vagy ügyfelét: amire szükségük van az adattárházban.
talán nem mondtam elég hangosan, de ugyanabban a táblázatban különböző SCD típusokat alkalmazhat minden oszlopra.
például: 2-es típus a város oszlophoz, 1-es típus a születési dátum oszlophoz. Minden ugyanabban a táblázatban.
ezért kérje meg őket minden dimenzióra:
* mely attribútumok állandóak,
* mely attribútumok változók?,
* mely attribútumokat kell teljes körűen követni, melyeknek csak a korábbi és az aktuális verziót kell megtartaniuk?
* hány sor van a táblázatban most / várható a következő 10 évben?
tartsa ezeket a válaszokat bizonyítékként. Az emberek, különösen az ügyfelek, szeretik meggondolni magukat. Tudod, hogy értem.
Ha még mindig nem biztos benne, hogy melyiket választja, ne feledje, hogy:

A változások előzményeinek megőrzése jó az Ön számára

egyszerűen azért, mert a követelmények megváltozhatnak.
A 0-as és 1-es típusok mellett véleményem szerint a legnépszerűbbek a 2-es és a 4-es típus.

hogyan lehet adatokat betölteni az SCD-be?,

jó kérdés. De ez a téma egy teljesen más történet.
mielőtt elkészítem a következő bejegyzést róla – nézd meg ezt az eszközt:
SCD Merge Wizard
az eszköz segít létrehozni, kezelése és karbantartása feltérképezése között forrás adatbázis (pl staging) és cél adatbázis (adattárház). Továbbá, ezzel a megközelítéssel fogja használni MERGE utasítás elvégzésére betöltési műveleteket konfigurált SCD Típus minden oszlop.
További hozzászólásokban elmagyarázom, hogyan kell alkalmazni a különböző SCD típusokat ebben az eszközben.

sok szerencsét a terhelésekhez,
Kamil