Shema snježnih pahuljica prema shemi zvijezda

Prilikom odabira sheme baze podataka za skladište podataka, pahuljica i zvijezde sheme imaju tendenciju da budu popularni izbori. Ova usporedba govori o prikladnosti shema zvijezda prema pahuljici u različitim scenarijima i njihovim karakteristikama.

Usporedni grafikon

Shema snježne pahulje u odnosu na usporednu shemu sa Star Star Shemom
Shema snježnih pahuljicaZvjezdana shema
Jednostavnost održavanja / promjena Nema suvišnih podataka, pa je sheme snježnih pahuljica lakše održavati i mijenjati. Ima suvišne podatke, a samim tim i manje lako ih se održava / mijenja
Jednostavnost korištenja Složenija pitanja, a time i manje lako razumljiva Niža složenost upita i lako razumljiv
Izvedba upita Više stranih ključeva, a samim tim i dulje vrijeme izvršavanja upita (sporije) Manji broj stranih ključeva, a samim tim i kraće vrijeme izvršenja upita (brže)
Vrsta skladišta podataka Dobro je koristiti za jezgru datawarehouse-a za pojednostavljenje složenih odnosa (mnogo: mnogo) Pogodno za datamarts s jednostavnim odnosima (1: 1 ili 1: mnogo)
pridružuje Veći broj pridruživanja Manje pridruživanja
Tablica dimenzija Shema snježne pahulje može imati više tablica dimenzija za svaku dimenziju. Zvjezdana shema sadrži samo jednu dimenzijsku tablicu za svaku dimenziju.
Kada koristiti Kada je tablica dimenzija relativno velike veličine, pahuljice su bolje jer smanjuju prostor. Kad tablica dimenzija sadrži manji broj redaka, možemo odabrati Star shemu.
Normalizacija / denormalizacija Tablice dimenzija su u normiranom obliku, ali tablica činjenica je u normiranom obliku Tablica dimenzija i činjenica su u normiranom obliku
Model podataka Pristup odozdo prema gore Pristup odozgo prema dolje

Sadržaj: Snježna pahulja vs Shema zvijezda

  • 1 Primjeri
    • Primjer sheme zvijezda
    • 1.2 Primjer sheme snježne pahulje
  • 2 Reference

Primjeri

Razmotrite bazu podataka za maloprodaju koja ima mnogo prodavaonica, a svaka prodavaonica prodaje mnogo proizvoda u mnogim kategorijama proizvoda i različitih marki. Skladište podataka ili mapa podataka za takvog trgovca trebao bi pružiti analitičarima mogućnost izvođenja izvještaja o prodaji grupirana po trgovini, datumu (ili mjesecu, tromjesečju ili godini) ili kategoriji proizvoda ili marke.

Primjer sheme zvijezda

Ako je ovaj podatkovni mart koristio zvjezdanu shemu, izgledao bi sljedeće:

Primjer zvijezde sheme

Tablica činjenica bio bi zapis prodajnih transakcija, dok postoje tablice dimenzija za datum, trgovinu i proizvod. Tablice dimenzija međusobno su povezane s tablicom činjenica putem svog primarnog ključa, koji je strani ključ tablice činjenica. Na primjer, umjesto pohranjivanja stvarnog datuma transakcije u niz tablice činjenica, datum_id se pohranjuje. Ovaj date_id odgovara jedinstvenom retku u tablici Dim_Date, a taj red pohranjuje i druge atribute datuma koji su potrebni za grupiranje u izvješćima. npr. dan u tjednu, mjesec, tromjesečje i tako dalje. Podaci su denormalizirani za lakše izvještavanje.

Evo kako bi se pomoću unutarnjih spajanja moglo dobiti izvještaj o broju televizija koje se prodaju po marki i zemlji.

Primjer sheme snježne pahulje

Isti scenarij također može koristiti shemu snježne pahulje, koja bi u tom slučaju bila strukturirana na sljedeći način:

Primjer sheme snježne pahulje (kliknite za povećanje)

Glavna razlika, u usporedbi sa shemom zvijezda, je ta što su podaci u dimenzijskim tablicama normaliziraniji. Na primjer, umjesto da pohranjuju mjesec, tromjesečje i dan u tjednu u svaki red Dim_Date tablice, oni se dalje raščlanjuju u njihove vlastite tablice dimenzija. Slično kao i u tablici Dim_Store, država i zemlja su geografski atributi koji su uklonjeni jedan korak - umjesto da budu pohranjeni u tablici Dim_Store, oni se sada spremaju u zasebnu tablicu Dim_Geografije.

Isti izvještaj - o broju televizija prodanih prema zemlji i prema robnoj marki - sada je malo složeniji nego u zvjezdanoj shemi:

SQL upit za dobivanje broja proizvoda koji se prodaju po zemlji i marki, kada baza podataka koristi shemu snježne pahulje.

Reference

  • Wikipedia: Snowflake_schema
  • Wikipedia: Star_schema