Pri výbere databázovej schémy pre dátový sklad, snehová vločka a hviezdne schémy bývajú populárnymi voľbami. Toto porovnanie pojednáva o vhodnosti schém hviezd verzus snehová vločka v rôznych scenároch a ich charakteristikách.
Schéma snehových vločiek | Schéma hviezd | |
---|---|---|
Jednoduchá údržba / zmena | Žiadna nadbytočnosť, takže schémy snehových vločiek sa ľahšie udržiavajú a menia. | Má nadbytočné údaje, a preto je ľahšie udržiavať / meniť |
Jednoduchosť použitia | Zložitejšie otázky, a tým menej zrozumiteľné | Nižšia zložitosť dotazov a ľahko zrozumiteľné |
Výkon dotazu | Viac cudzích kľúčov, a tým aj dlhší čas vykonávania dotazu (pomalšie) | Menší počet cudzích kľúčov, a tým aj kratší čas na vykonanie dotazu (rýchlejšie) |
Typ Datawarehouse | Užitočné pre jadro dátového skladu na zjednodušenie zložitých vzťahov (veľa: veľa) | Dobré pre datové mapy s jednoduchými vzťahmi (1: 1 alebo 1: veľa) |
spojí | Vyšší počet pripojení | Menej pripojení |
Tabuľka rozmerov | Schéma snehových vločiek môže mať pre každú dimenziu viac ako jednu tabuľku dimenzií. | Hviezdičková schéma obsahuje iba jednu tabuľku dimenzií pre každú dimenziu. |
Kedy použiť | Ak je rozmerová tabuľka relatívne veľká, je lepšie odpratávanie snehu, pretože zmenšuje priestor. | Ak tabuľka rozmerov obsahuje menší počet riadkov, môžeme zvoliť schému hviezd. |
Normalizácia / De-Normalizácia | Tabuľky dimenzií sú v normalizovanej podobe, ale tabuľka faktov je v normalizovanej podobe | Tabuľky dimenzií aj faktov sú v normalizovanej podobe |
Dátový model | Prístup zdola nahor | Prístup zhora nadol |
Zvážte databázu pre maloobchodníka, ktorý má veľa obchodov, pričom každý obchod predáva veľa produktov v mnohých kategóriách výrobkov a rôznych značiek. Dátový sklad alebo dátový server pre takého maloobchodníka by musel poskytnúť analytikom schopnosť spúšťať výkazy predaja zoskupené podľa obchodu, dátumu (alebo mesiaca, štvrťroka alebo roku) alebo kategórie produktu alebo značky..
Ak by tento dátový prehľad používal schému hviezd, vyzeralo by to takto:
Príklad schémy StarFaktická tabuľka by mala byť záznamom o predajných transakciách, zatiaľ čo existujú tabuľky rozmerov pre dátum, obchod a produkt. Tabuľky dimenzií sú každý spojené s tabuľkou faktov prostredníctvom ich primárneho kľúča, ktorý je cudzím kľúčom pre tabuľku faktov. Napríklad namiesto uloženia skutočného dátumu transakcie do riadku tabuľky faktov sa date_id uloží. Tento date_id zodpovedá jedinečnému riadku v tabuľke Dim_Date a tento riadok tiež ukladá ďalšie atribúty dátumu, ktoré sú potrebné pre zoskupovanie v prehľadoch. napr. deň v týždni, mesiac, štvrťrok roku atď. Dáta sú denormalizované pre ľahšie vykazovanie.
Takto je možné získať prehľad o počte televízorov predávaných podľa značky a podľa krajiny pomocou vnútorných pripojení.
Rovnaký scenár môže použiť aj schému snehových vločiek, v takom prípade by bola štruktúrovaná takto:
Príklad schémy snehových vločiek (kliknite pre zväčšenie)Hlavný rozdiel v porovnaní so schémou hviezd je, že údaje v rozmerových tabuľkách sú normalizovanejšie. Napríklad namiesto ukladania mesiaca, štvrťroku a dňa v týždni v každom riadku tabuľky Dim_Date sa tieto ďalej rozdelia do ich vlastných rozmerových tabuliek. Podobne pre tabuľku Dim_Store sú štát a krajina geografické atribúty, ktoré sú odstránené o jeden krok - namiesto toho, aby boli uložené v tabuľke Dim_Store, sú teraz uložené v samostatnej tabuľke Dim_Geography..
Rovnaká správa - počet televízorov predávaných podľa krajiny a značky - je teraz o niečo zložitejšia ako v schéme hviezd:
SQL dotaz na získanie množstva produktov predaných podľa krajiny a značky, keď databáza používa schému snehových vločiek.