Schemat płatków śniegu vs. Schemat gwiazdy
- 2752
- 612
- Spirydion Kruk
Wybierając schemat bazy danych dla hurtowni danych, płatek śniegu I Schematy gwiazd zwykle są popularnymi wyborami. To porównanie omawia przydatność gwiazdy vs. schematy płatków śniegu w różnych scenariuszach i ich cechach.
Wykres porównania
Schemat płatka śniegu | Schemat gwiazdy | |
---|---|---|
Łatwość konserwacji / zmiany | Brak redundancji, więc schematy płatków śniegu są łatwiejsze w utrzymaniu i zmianie. | Ma zbędne dane, a zatem mniej łatwe w utrzymaniu/zmianie |
Łatwość użycia | Bardziej złożone zapytania, a zatem mniej łatwe do zrozumienia | Niższa złożoność zapytania i łatwa do zrozumienia |
Wydajność zapytania | Więcej kluczy zagranicznych, a zatem dłuższy czas wykonywania zapytania (wolniej) | Mniejsza liczba klawiszy zagranicznych, a tym samym krótszy czas wykonywania zapytania (szybszy) |
Rodzaj DataWarehouse | Dobry w użyciu dla DataWarehouse Core w celu uproszczenia złożonych relacji (wiele: wiele) | Dobry dla danych z prostymi relacjami (1: 1 lub 1: wiele) |
Dołącza | Większa liczba połączeń | Mniej dołącza |
Tabela wymiarowa | Schemat płatków śniegu może mieć więcej niż jeden tabelę wymiarów dla każdego wymiaru. | Schemat gwiazdy zawiera tylko tabelę jednorazową dla każdego wymiaru. |
Kiedy użyć | Gdy stół wymiarowy jest stosunkowo duży, prążkowanie śniegu jest lepsze, ponieważ zmniejsza przestrzeń. | Gdy tabela wymiarów zawiera mniejszą liczbę wierszy, możemy wybrać schemat gwiazdy. |
Normalizacja/ de-normalizacja | Tabele wymiarowe są w postaci znormalizowanej, ale tabela faktów jest w postaci de-znormalizowanej | Zarówno tabele wymiarów, jak i faktów są w postaci de-znormalizowanej |
Model danych | Podejście oddolne | Podejście odgórne |
Przykłady
Rozważ bazę danych dla sprzedawcy, który ma wiele sklepów, a każdy sklep sprzedaje wiele produktów w wielu kategoriach produktów i różnych marek. Hurtownia danych lub Mart danych dla takiego sprzedawcy musiałby zapewnić analitykom możliwość uruchamiania raportów sprzedaży zgrupowanych według sklepu, daty (lub miesiąca, kwartału lub roku) lub kategorii produktu lub marki.
Przykład schematu gwiazdy
Gdyby te dane Mart korzystał z schematu gwiazd, wyglądałby w następujący sposób:
Przykład schematu gwiazdyTabela faktów byłaby rekordem transakcji sprzedaży, podczas gdy istnieją tabele wymiarów dla daty, sklepu i produktu. Każde tabele wymiarowe są podłączone do tabeli faktów za pomocą ich klucza podstawowego, który jest kluczem obcego dla tabeli faktów. Na przykład, zamiast przechowywać faktyczną datę transakcji z rzędu tabeli faktów, DATE_ID jest przechowywany. Ten data_dys odpowiada unikalnemu wierszowi w tabeli DIM_DATE, a ten wiersz przechowuje także inne atrybuty daty wymagane do grupowania w raportach. mi.G., Dzień tygodnia, miesiąca, ćwierć roku i tak dalej. Dane są denormalizowane w celu łatwiejszego zgłaszania.
Oto, w jaki sposób można uzyskać raport o liczbie telewizorów sprzedawanych przez markę i kraj.
Przykład schematu płatka śniegu
Ten sam scenariusz może również użyć schematu płatków śniegu, w którym to przypadku byłby skonstruowany w następujący sposób:
Przykład schematu płatków śniegu (kliknij, aby powiększyć)Główną różnicą w porównaniu ze schematem gwiazd jest to, że dane w tabelach wymiarów są bardziej znormalizowane. Na przykład, zamiast przechowywać miesiąc, ćwierć i dzień tygodnia w każdym rzędzie tabeli DIM_DATE, są one dodatkowo podzielone na własne tabele wymiarów. Podobnie dla tabeli DIM_store, państwo i kraj są atrybutami geograficznymi, które są usunięte o jeden krok - zamiast przechowywać w tabeli DIM_store, są teraz przechowywane w osobnej tabeli DIM_GEAGHIGI.
Ten sam raport - liczba telewizorów sprzedawanych według kraju i marki - jest teraz nieco bardziej skomplikowana niż w schemacie gwiazd:
Zapytanie SQL w celu uzyskania liczby produktów sprzedawanych według kraju i marki, gdy baza danych wykorzystuje schemat płatków śniegu.