Az adatbázis-séma kiválasztásakor az adattárházhoz, hópehely és csillag sémák általában népszerű választás. Ez az összehasonlítás tárgyalja a csillag és a hópehely sémák alkalmasságát a különböző forgatókönyvekben és azok jellemzőit.
Hópehely séma | Csillagjegy | |
---|---|---|
Karbantartás / változtatás könnyű | Nincs redundáció, így a hópehely sémákat könnyebb karbantartani és megváltoztatni. | Redundáns adatokkal rendelkezik, ezért kevésbé könnyű karbantartani / megváltoztatni |
Egyszerű használat | Bonyolultabb lekérdezések, és így kevésbé könnyen érthetőek | Kisebb lekérdezés bonyolult és könnyen érthető |
Lekérdezés teljesítménye | Több idegen kulcs és így hosszabb lekérdezés-végrehajtási idő (lassabb) | Kevesebb idegen kulcs és így rövidebb lekérdezés-végrehajtási idő (gyorsabb) |
Datawarehouse típusa | Jól használható az datawarehouse mag számára a komplex kapcsolatok egyszerűsítésére (sok: sok) | Jó az egyszerű kapcsolatokkal rendelkező adattárakhoz (1: 1 vagy 1: sok) |
csatlakozik | Nagyobb csatlakozások száma | Kevesebb csatlakozik |
Mérettáblázat | A hópehely sémáinak mindegyik dimenziónál egynél több dimenziós táblája lehet. | A csillagséma minden dimenzióhoz csak egydimenziós táblát tartalmaz. |
Mikor kell használni | Ha a mérettábla viszonylag nagy, a hópehely jobb, mivel csökkenti a helyet. | Ha a mérettáblázat kevesebb sort tartalmaz, választhatjuk a Csillag sémát. |
Normalizálás / Normalizálás | A mérettáblák normalizált formában vannak, a ténytáblák pedig normális formában vannak | Mind a dimenziós, mind a ténytáblák normalizálatlan formában vannak |
Adatmodell | Alulról felfelé építkező megközelítés | Felülről lefelé irányuló megközelítés |
Vegyünk egy adatbázist egy kiskereskedő számára, amelynek sok üzlete van, mindegyik üzlet sok terméket értékesít számos termékkategóriában és különböző márkákban. Az ilyen kiskereskedő adattárházának vagy adattárházának az elemzők számára lehetővé kell tennie az értékesítési jelentések bolt, dátum (vagy hónap, negyedév vagy év), termékkategória vagy márka szerint csoportosítva történő futtatását..
Ha ez az adatcsillag csillag sémát használna, akkor a következőképpen néz ki:
Példa egy csillag sémáraA ténytábla lenne az értékesítési tranzakciók nyilvántartása, míg léteznek dimenziós táblák a dátumra, az áruházra és a termékre. A mérettáblák mindegyike az elsődleges kulcson keresztül kapcsolódik a ténytáblához, amely idegen kulcs a ténytáblához. Például a tényleges tranzakció dátumának a ténytáblázat sorában való tárolása helyett a date_id kerül tárolásra. Ez a date_id egy egyedülálló sornak felel meg a Dim_Date táblázatban, és a sor más dátum-attribútumokat is tárol, amelyek a jelentésekben történő csoportosításhoz szükségesek. például a hét napja, a hónap, az év negyedéve és így tovább. Az adatokat denormalizálják a könnyebb jelentéstétel érdekében.
Így kaphat beszámolót a márkák és országok szerint eladott televíziók számáról a belső csatlakozások segítségével.
Ugyanez a forgatókönyv használhat hópehely sémát is, ebben az esetben a következő felépítésű:
Hópehely séma példa (kattintson a nagyításhoz)A csillagrendszerhez viszonyítva a fő különbség az, hogy a dimenziós táblázatokban szereplő adatok jobban normalizálva vannak. Például ahelyett, hogy a Dim_Date tábla minden sorában tárolná a hónapot, a negyedévet és a hét napját, ezeket tovább bontják saját dimenziós tábláikba. Hasonlóan a Dim_Store táblához, az állam és az ország egy lépéssel eltávolított földrajzi jellemzők - a Dim_Store táblában való tárolás helyett most külön Dim_Geography táblában tárolódnak..
Ugyanez a jelentés - az eladott televíziók száma országonként és márkánként - most kicsit bonyolultabb, mint egy csillagrendszerben:
SQL lekérdezés az eladott termékek számának megszerzéséhez országonként és márkánként, amikor az adatbázis hópehely sémát használ.