A lassan változó dimenziók ( SCD) egy olyan mechanizmus, amellyel nyomon követhetők a méretadatok változásai egy adattárház szempontjából [1] [2] . Akkor használatos, ha az adatok nem változnak túl gyakran és nem az ütemezés szerint. Ilyen például a földrajzi adatok (raktár helye, egy szervezet jogi címe), a hűségprogramban részt vevő ügyfél státusza, vagy egy cég részlege, ahol az alkalmazottja dolgozik [3] .
Az SCD-nek többféle típusa létezik [4] .
A null típus (SCD0) passzív módszer, mert várhatóan az ilyen típusú attribútumok értékei nem változnak. Ilyen például a rekord létrehozásának dátuma, születési ideje és helye, a készülék sorozatszáma [5] .
Példa:
Sorozat és útlevélszám | Teljes név | Születési hely |
---|---|---|
1800 223111 | Ivanov Szergej Petrovics | Kyzyl |
Az első típus (SCD1) egyszerű felülírást használ: a táblázat adatait teljesen kicserélik újakra (a legfrissebbekre). A történetiség teljesen elveszett, vagyis a frissítés után nem lehet követni a változások láncolatát [6] .
Példa:
A helyettesítő kulcs (rekordazonosító) ugyanaz marad. A " Pozíció " és a " Részleg " mezők értékei újakra cserélődnek. Ebben a példában az üzleti kulcs (személyzeti szám) nem változik, de szükség esetén módosítható, más mezőkkel analóg módon.
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály |
---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | Nagykereskedelmi beszerzések osztálya |
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály |
---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | főszakértő | Értékesítési osztály |
A második típus (SCD2) egy új sor és további oszlopok hozzáadását használja. Ez a megközelítés megőrzi a történelmet.
Ezenkívül hozzáadhat szolgáltatásoszlopokat, amelyek felelősek lehetnek a verziószámért, az állapotért és az időintervallumért, amely alatt ezek a sorok relevánsnak tekinthetők.
Példa: A helyettesítő kulcs ( rekordazonosító ) újonnan jön létre. Az üzleti kulcs ( Személyi szám ) nem változik, ami lehetővé teszi a hozzáadott sor összekapcsolását az eredetivel [3] .
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály |
---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | Nagykereskedelmi beszerzések osztálya |
Csak egy sor hozzáadva
A hozzáadott sor a " Pozíció " és a " Részleg " mezők új értékeit tartalmazza .
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály |
---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | Nagykereskedelmi beszerzések osztálya |
1027 | IB-69420 | Ivanov Szergej Petrovics | főszakértő | Értékesítési osztály |
Sor és oszlop hozzáadva zászlóval
A hozzáadott sor a " Pozíció " és a " Részleg " mezők új értékeit tartalmazza . A hozzáadott oszlop tartalmazza a rekord állapotát a táblázatban. Ezen az állapoton kívül bármilyen más jelző is használható, például a tárgyalási szakasz.
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály | Állapot |
---|---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | Nagykereskedelmi beszerzések osztálya | HAMIS |
1027 | IB-69420 | Ivanov Szergej Petrovics | főszakértő | Értékesítési osztály | IGAZ |
Sor és oszlop hozzáadva a verzióval
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály | Változat |
---|---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | Nagykereskedelmi beszerzések osztálya | 0 |
1027 | IB-69420 | Ivanov Szergej Petrovics | főszakértő | Értékesítési osztály | egy |
Minden új változtatással a verziószám fokozatosan növekszik.
Hozzáadott egy sort és oszlopokat egy tartománnyal
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály | a kezdés dátuma | lejárati dátum |
---|---|---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | Nagykereskedelmi beszerzések osztálya | 2000-01-01T00:00:00 | 2008-08-08T00:00:00 |
1027 | IB-69420 | Ivanov Szergej Petrovics | főszakértő | Értékesítési osztály | 2008-08-08T00:00:00 | NULLA |
A NULL helyett a Befejezés dátuma oszlopban , amely azt jelzi, hogy a sor a legfrissebb, használhatja a " 9999-12-31T00:00:00 " értéket.
Az előző sor befejezési dátumának értéke megegyezik a következő sor kezdő dátumának értékével.
Egy sor és oszlopok hozzáadva a módosítás hatálybalépésének dátumával
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály | Hatálybalépés napjára | Állapot |
---|---|---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | Nagykereskedelmi beszerzések osztálya | 2000-01-01T00:00:00 | IGAZ |
1027 | IB-69420 | Ivanov Szergej Petrovics | főszakértő | Értékesítési osztály | 2008-08-08T00:00:00 | HAMIS |
A harmadik típus (SCD3) új attribútumoszlopok hozzáadását használja, amelyek az előző értéket tárolják az előzmények megőrzése érdekében. Ez a típus ritkán fordul elő tiszta formájában [7] , és olyan helyzetekben van rá szükség a vállalkozásoknak, amikor csak meghatározott paraméterek változásait kell követni.
[8] példa :
Record ID | Személyzeti szám | Teljes név | Munka megnevezése | Osztály |
---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | Nagykereskedelmi beszerzések osztálya |
Record ID | Személyzeti szám | Teljes név | Korábbi pozíció | Aktuális pozíció | Volt osztály | Osztály | Hatálybalépés napjára |
---|---|---|---|---|---|---|---|
1026 | IB-69420 | Ivanov Szergej Petrovics | Ifjúsági szakember | főszakértő | Nagykereskedelmi beszerzések osztálya | Értékesítési osztály | 2000-01-01T00:00:00 |
A harmadik típus csak korlátozott történetiséget őrzött meg (csak az előző értékig), ami miatt kevésbé értelmes, mint a 2. típus [9] .
Adattár | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
| ||||||||||||||
| ||||||||||||||
Kategória |