Wiedz o głównym schemacie: gwiazda kontra płatek śniegu

Model wielowymiarowy stanowi fundament projektowania systemów hurtowni danych.

Nadrzędnym celem tych struktur jest sprostanie potrzebom rozbudowanych baz danych, które są przeznaczone do zaawansowanych analiz (OLAP).

Metoda ta porządkuje dane w bazach, zapewniając ich logiczne rozmieszczenie. Schemat ten pozwala użytkownikom zadawać pytania dotyczące tendencji w biznesie lub na rynku.

Dodatkowo, model wielowymiarowy przedstawia dane w formie kostek danych, co umożliwia ich analizę i modelowanie z różnorodnych perspektyw i aspektów.

Istnieją trzy główne typy, jednak częstym błędem jest mylenie schematu gwiazdy ze schematem płatka śniegu. Z tego powodu, wybór preferowanego modelu może okazać się wyzwaniem.

Jeśli ten problem dotyczy również Ciebie, przyjrzyjmy się bliżej różnicom między schematami gwiazdy i płatka śniegu, zaczynając od definicji, poprzez analizę ich zalet, wyzwań, diagramów i cech charakterystycznych.

Czym jest schemat wielowymiarowy?

Schemat odnosi się do logicznego opisu kompletnej bazy danych oraz hurtowni danych. Zawiera nazwy i opisy rekordów, w tym agregaty i powiązane elementy informacyjne.

Bazy danych zazwyczaj wykorzystują model relacyjny do opisu, natomiast systemy hurtowni danych stosują model schematu.

Schemat wielowymiarowy można definiować za pomocą języka DMQL (Data Mining Query Language).

Do określenia hurtowni danych i magazynów danych wykorzystuje dwa podstawowe elementy: definicję wymiaru oraz definicję kostki.

Schemat wielowymiarowy korzysta z różnych typów modeli. Są to:

  • Schemat gwiazdy
  • Schemat płatka śniegu
  • Schemat galaktyki

Skupmy się na schematach gwiazdy i płatka śniegu.

Gwiazda kontra płatek śniegu: wprowadzenie

Co to jest schemat gwiazdy?

Schemat gwiazdy to model architektoniczny wykorzystywany w hurtowniach danych i analizie biznesowej, w którym pojedyncza tabela faktów przechowuje dane pomiarowe i transakcyjne. Wykorzystuje on także liczne, mniejsze tabele wymiarów, zawierające atrybuty związane z danymi biznesowymi.

Nazwa schematu odzwierciedla jego strukturę. Podobnie jak gwiazda, tabela faktów znajduje się w centralnym punkcie diagramu, a mniejsze tabele wymiarów, niczym ramiona, przylegają do niej, tworząc układ przypominający gwiazdę.

Każdy schemat gwiazdy charakteryzuje się obecnością pojedynczej tabeli faktów i wielu mniejszych tabel wymiarów. Tabele faktów zawierają konkretne, mierzalne dane, które podlegają analizie, takie jak rezultaty, informacje finansowe czy dane sprzedażowe. Mogą to być dane historyczne lub transakcyjne.

Schemat gwiazdy jest najprostszym i najbardziej podstawowym spośród schematów stosowanych w hurtowniach i magazynach danych. Jest efektywny w obsłudze podstawowych zapytań. Model ten zazwyczaj wspiera analizę biznesową, ad hoc, aplikacje analityczne i moduły przetwarzania analitycznego online.

Schemat gwiazdy umożliwia również wykonywanie obliczeń, takich jak liczba, średnia, suma i inne agregacje wielu rekordów. Użytkownicy mogą z łatwością filtrować i grupować dane według wymiarów. Przykładowo, mogą generować zapytania typu „znajdź wszystkie dane sprzedaży z czerwca” lub „przeanalizuj przychody biura XYZ w 2022 roku”.

Co to jest schemat płatka śniegu?

Schemat płatka śniegu to wielowymiarowy model danych, który można uznać za rozszerzenie schematu gwiazdy. Wynika to z faktu, że tabele wymiarów w schemacie płatka śniegu są dzielone na podwymiary.

Schemat jest klasyfikowany jako płatek śniegu, gdy przynajmniej jedna tabela wymiarów nie jest bezpośrednio połączona z tabelą faktów, ale łączy się z nią poprzez inne tabele wymiarów.

Schemat płatka śniegu jest efektem normalizacji tabel wymiarów w schemacie gwiazdy. Po przeprowadzeniu normalizacji wszystkich tabel wymiarów, uzyskana struktura przypomina płatek śniegu, z tabelą faktów umieszczoną w jego centrum.

Mówiąc prościej, schemat płatka śniegu składa się z jednej centralnej tabeli faktów, która łączy się z tabelami wymiarów, a te z kolei łączą się z kolejnymi tabelami wymiarów. Schemat ten został stworzony z myślą o zwiększeniu wydajności zapytań.

Model ten pozwala na szybkie i elastyczne wykonywanie zapytań dotyczących skomplikowanych relacji i wymiarów. Jest szczególnie użyteczny w przypadku relacji jeden-do-wielu oraz wiele-do-wielu między różnymi poziomami wymiarów.

Ścisłe przestrzeganie zasad normalizacji danych prowadzi do zwiększenia efektywności przechowywania. Jednakże redundancja danych jest minimalna, a wydajność może być niższa w porównaniu do modeli zdenormalizowanych, takich jak schemat gwiazdy.

Gwiazda kontra płatek śniegu: zasada działania

Jak działa schemat gwiazdy?

Tabela faktów w centrum modelu gwiazdy przechowuje dwa typy informacji: wartości liczbowe i wartości atrybutów wymiarów. Rozważmy przykład bazy danych sprzedaży, aby lepiej to zrozumieć.

  • Wartości liczbowe są unikalne dla każdego wiersza i punktu danych. Nie są one skorelowane z danymi przechowywanymi w innym wierszu. Są to fakty dotyczące danej transakcji, takie jak łączna kwota, liczba zamówionych sztuk, dokładny czas, zysk netto, identyfikator zamówienia itp.
  • Wartości atrybutów wymiarowych nie zawierają bezpośrednio danych, ale przechowują klucze obce, które odwołują się do wierszy w tabeli wymiarowej. Różne wiersze w tabeli centralnej odwołują się do tych informacji, np. wartość danych, identyfikator pracownika sprzedaży, identyfikator oddziału, identyfikator produktu itp.

Tabele wymiarów zawsze zawierają dodatkowe informacje odnoszące się do tabeli faktów. Każda tabela wymiarów odnosi się do kolumny tabeli faktów, zawierając wartość wymiaru i dodatkowe dane na jego temat.

Przykład: tabela wymiarów pracownika wykorzystuje identyfikator pracownika jako klucz, a także zawiera dodatkowe informacje, takie jak imię i nazwisko, płeć, adres i numer telefonu. Podobnie, tabela wymiarów produktu przechowuje informacje, w tym nazwę produktu, kolor, datę wprowadzenia na rynek, koszt produkcji itp.

Jak działa schemat płatka śniegu?

Wyobraźmy sobie strukturę płatka śniegu, gdzie w centrum znajduje się główny element, z którego rozchodzą się połączenia do różnych punktów. Podobna koncepcja przyświeca projektowaniu schematu płatka śniegu w kontekście hurtowni i magazynów danych.

Jest on podobny do schematu gwiazdy, ale różni się szczegółami. W przeciwieństwie do schematu gwiazdy, schemat płatka śniegu rozszerza tabele wymiarów, tworząc tabele podrzędne, które są połączone z tabelami wymiarów.

Głównym celem tego modelu jest normalizacja danych zdenormalizowanych występujących w schemacie gwiazdy. W ten sposób może on rozwiązać typowe problemy związane z tym modelem.

W centrum schematu znajduje się tabela faktów, która łączy się z informacjami zawartymi w tabelach wymiarów. Tabele te rozchodzą się na zewnątrz, prowadząc do tabel podwymiarowych, zawierających szczegółowe informacje opisujące dane z tabel wymiarów.

Przykład: schemat płatka śniegu dla sprzedaży może zawierać tabelę faktów sprzedaży oraz tabele lokalizacji sklepu, linii, rodziny, produktu i czasu. Wymiary rynkowe składają się z dwóch tabel: tabela sklepu (wymiar podstawowy) i tabela lokalizacji sklepu (wymiar podrzędny). Wymiar produktu posiada trzy tabele podrzędne: produkt, linia i rodzina.

Gwiazda kontra płatek śniegu: charakterystyka

Charakterystyka schematu gwiazdy

  • Schemat gwiazdy umożliwia filtrowanie danych ze znormalizowanych źródeł, aby sprostać potrzebom hurtowni danych. W tabeli faktów generowany jest unikalny klucz dla każdego wiersza, który identyfikuje dany rekord.
  • Umożliwia szybkie obliczenia i agregacje, takie jak miesięczny przychód i łączna liczba sprzedanych produktów. Te informacje mogą być filtrowane w zależności od potrzeb, poprzez odpowiednie zapytania.
  • Jest to zbiór zdarzeń, zawierający skończone wartości liczbowe składające się z kluczy obcych, które odwołują się do tabel wymiarowych. Istnieją różne rodzaje tabel faktów, które zawierają dane na poziomie atomowym.
  • Tabela faktów transakcji zawiera dane o konkretnych zdarzeniach, np. sprzedaży i świętach.
  • Rejestrowanie faktów obejmuje określone okresy, takie jak informacje o koncie na koniec roku lub kwartału.
  • Tabela wymiarów zawiera szczegółowe informacje o atrybutach lub rekordach znalezionych w centralnej tabeli faktów.
  • Użytkownik ma możliwość samodzielnego projektowania tabeli zgodnie z potrzebami.
  • Schemat gwiazdy można wykorzystać do gromadzenia tabel migawkowych.

Charakterystyka schematu płatka śniegu

  • Schemat płatka śniegu charakteryzuje się mniejszym zapotrzebowaniem na przestrzeń dyskową.
  • Model ten jest łatwy we wdrożeniu dzięki oddzielnym tabelom wymiarów głównych.
  • Tabele wymiarów zawierają przynajmniej dwa atrybuty, które definiują informacje w różnych granulacjach.
  • Z powodu wielu tabel, jego wydajność jest niższa w porównaniu ze schematem gwiazdy.
  • Schemat płatka śniegu zapewnia wysoki poziom integralności danych i niską redundancję, dzięki normalizacji.

Gwiazda kontra płatek śniegu: zalety

Zalety schematu gwiazdy

  • Schemat gwiazdy jest najprostszym z dostępnych schematów dla magazynów danych.
  • Posiada prostą logikę raportowania. Logika ta jest implementowana dynamicznie.
  • Został zaprojektowany z wykorzystaniem kostek zasilających stosowanych w procesie transakcji online, co gwarantuje ich wydajne działanie.
  • Schemat gwiazdy składa się z prostej logiki i zapytań, które łatwo można wyodrębnić z procesu transakcyjnego.
  • Oferuje lepszą wydajność w aplikacjach raportujących.
  • Jest wdrażany, aby kontrolować szybki odzysk danych.
  • Wyselekcjonowane informacje można łatwo wykorzystać w różnych przypadkach.

Zalety schematu płatka śniegu

  • Schemat płatka śniegu służy do zwiększania wydajności zapytań, dzięki mniejszym wymaganiom dotyczącym pamięci dyskowej.
  • Oferuje większą skalowalność w kontekście relacji między komponentami i poziomami wymiarów.
  • Jest łatwiejszy w utrzymaniu.
  • Zapewnia szybkie pobieranie danych.
  • Jest to powszechny i prosty schemat danych dla hurtowni danych.
  • Pomaga poprawić jakość danych.
  • Uporządkowane dane minimalizują problemy z integralnością danych.

Gwiazda kontra płatek śniegu: ograniczenia

Ograniczenia schematu gwiazdy

Cechuje się wysokim poziomem denormalizacji i problemami z integralnością. Cały proces może zostać zakłócony, jeśli użytkownik nie zaktualizuje danych. Bezpieczeństwo jest również ograniczone. Dodatkowo, schemat gwiazdy nie jest tak elastyczny jak modele analityczne. Nie oferuje skutecznego wsparcia dla różnorodnych relacji.

Ograniczenia schematu płatka śniegu

Głównym ograniczeniem schematu płatka śniegu jest dodatkowa praca konserwacyjna, wynikająca z dużej liczby małych tabel wymiarów. Wiele złożonych zapytań utrudnia odnalezienie potrzebnych danych. Dodatkowo czas realizacji zapytań jest dłuższy, ze względu na większą liczbę tabel. Model ten jest również sztywny i wymaga wyższych kosztów utrzymania.

Gwiazda kontra płatek śniegu: różnice

Zarówno schemat gwiazdy, jak i płatka śniegu są typami schematów wielowymiarowych, ale różnią się strukturą i właściwościami. Pierwszy z nich przypomina gwiazdę, a drugi płatek śniegu, co odzwierciedlają ich nazwy.

W schemacie gwiazdy, relacja między centralną tabelą faktów a tabelami wymiarów jest tworzona za pomocą pojedynczego sprzężenia. Z kolei w schemacie płatka śniegu, do połączenia z tabelami wymiarów wymagane jest wielokrotne sprzężenie.

Schemat gwiazdy jest zwykle wykorzystywany, gdy tabela wymiarów zawiera mniejszą liczbę wierszy, natomiast schemat płatka śniegu, gdy tabela wymiarów jest stosunkowo duża.

Poniższa tabela przedstawia porównanie obu modeli, uwzględniając sposób połączenia tabel wymiarów i faktów w różnych schematach.

Parametry | Schemat gwiazdy | Schemat płatka śniegu

Miejsce na dysku | Schemat gwiazdy zajmuje więcej miejsca na dysku | Schemat płatka śniegu zajmuje mniej miejsca na dysku

Redundancja danych | Wysoka redundancja danych | Niska redundancja danych

Normalizacja | Tabele wymiarów są zdenormalizowane, co oznacza powtarzanie wartości | Tabele wymiarów są w pełni znormalizowane

Wydajność zapytań | Wykonywanie zapytań zajmuje minimalną ilość czasu, co zapewnia lepszą wydajność | Wykonywanie zapytań zajmuje więcej czasu, co zmniejsza wydajność w porównaniu ze schematem gwiazdy

Złożoność zapytań | Niska złożoność zapytań | Złożoność zapytań wyższa niż w schemacie gwiazdy

Konserwacja | Utrzymanie schematu gwiazdy jest nieco trudne ze względu na wysoką redundancję danych | Utrzymanie i modyfikacja schematu płatka śniegu są łatwiejsze dzięki niskiej redundancji danych

Integralność danych | Integralność danych jest wysoka, ponieważ dane są przechowywane w wielu kopiach | Integralność danych jest niższa ze względu na pełną normalizację tabel wymiarów

Hierarchie | Hierarchie tabel wymiarów w schemacie gwiazdy są przechowywane w tabeli wymiarów | Hierarchie są podzielone na oddzielne tabele wymiarów

Projekt DB | Prosty projekt bazy danych | Złożony projekt bazy danych

Tabela faktów | Tabelę faktów otacza wiele tabel wymiarów | Tabelę faktów otaczają tabele wymiarów, które z kolei są otoczone tabelami wymiarów podrzędnych

Konfiguracja | Schemat gwiazdy jest łatwy w projektowaniu i konfiguracji, ze względu na bezpośrednie relacje | Konfiguracja schematu płatka śniegu jest bardziej skomplikowana

Przetwarzanie kostek | Przetwarzanie kostek jest szybsze | Przetwarzanie kostek jest wolniejsze z powodu złożonego łączenia

Klucze obce | Minimalna liczba kluczy obcych | Maksymalna liczba kluczy obcych

Podsumowanie

Schematy gwiazdy i płatka śniegu są wykorzystywane w różnych sektorach. Decyzja o wyborze konkretnego schematu zależy od wymagań danego projektu.

Schemat płatka śniegu stanowi rozszerzenie schematu gwiazdy, w którym normalizuje tabele wymiarów.

Schemat gwiazdy jest prosty w projektowaniu, umożliwia szybsze wykonywanie zapytań i jest łatwy w konfiguracji. Z kolei schemat płatka śniegu jest łatwiejszy w utrzymaniu, zajmuje mniej miejsca na dysku i jest mniej podatny na problemy z integralnością danych.

Zatem schemat gwiazdy może być lepszym rozwiązaniem, jeśli priorytetem jest prosty projekt, mniejsza liczba kluczy obcych i szybsze przetwarzanie kostek. Jeżeli natomiast kluczowe jest oszczędzanie miejsca na dysku, niska integralność danych i łatwa konserwacja, bardziej odpowiedni może być schemat płatka śniegu.

Zachęcamy również do zapoznania się z najlepszymi rozwiązaniami dotyczącymi grafowych baz danych.