Na poprzednim wykładzie przedstawiono ogólny schemat hurtowni danych. Realizacja hurtowni może
jednak od tego schematu znacznie odbiegać.
Architektura scentralizowana to najczęściej stosowany
schemat dużych hurtowni danych. Składa się ze wszystkich opisanych na
poprzednim wykładzie części (warstwa ODS jest opcjonalna).
Architektura federacyjna stosowana jest w przypadku,
gdy z różnych powodów nie może powstać centralna, wielka hurtownia danych,
gromadząca wszystkie dane. Wtedy miejscem przechowywania danych są magazyny
danych operacyjnych, a hurtownia istnieje jedynie wirtualnie - jako wspólny
schemat logiczny i pojęciowy (czyli jako niezmaterializowana perspektywa).
Zapytania kierowane do hurtowni muszą być automatycznie przetłumaczane na język
danych w ODS i policzone w sposób rozproszony. Wadą tego rozwiązania jest
mniejsza wydajność, natomiast może się ono okazać wystarczające, jeśli hurtownie
tematyczne (zmaterializowane ze względu na wydajność) obsługują wszystkie
wymagane funkcje analityczne.
Architektura warstwowa to odmiana jednej z
poprzednich dwóch architektur, w których budujemy wiele warstw hurtowni
tematycznych zawierających coraz wyższe stopnie agregacji danych. Dane z
kolejnych warstw są obliczane na podstawie poprzednich. Ze względu na
wydajność, wszystkie warstwy są zmaterializowane. Zaletą odpowiednio
zaprojektowanej architektury warstwowej jest optymalizacja wielkości danych w
hurtowniach tematycznych (możliwość szybkiego obliczenia mniej szczegółowych
zestawień, przy jednoczesnym pozostawieniu możliwości sięgnięcia po bardziej
szczegółowe, ale również zagregowane, dane w poprzedniej warstwie), a także skrócenie
czasu aktualizacji (dzięki większemu rozproszeniu obliczeń i unikaniu
redundancji).
Centralna hurtownia danych projektowana jest jak zwykła baza danych.
Elementem wyjściowym są dane, które mamy przechowywać - ich schemat logiczny
(podział na tablice itp.) może odzwierciedlać strukturę danych źródłowych, o
ile jest ona jednolita. Jeśli nie, dane muszą podlegać integracji pojęciowej i
logicznej (por. następny wykład), by mogły znaleźć się w centralnej hurtowni
danych. Ponadto często musimy dane wzbogacić o dodatkowe elementy logiczne
związane z osługą hurtowni danych. Często jest to dodatkowa kolumna, wskazująca
datę wprowadzenia danego rekordu do hurtowni danych. Dodatkowe struktury
dotyczące czasu i zmian danych w czasie bywają rozbudowane - por. problem
retrospekcji opisany w następnym rozdziale.
Hurtownie tematyczne projektowane są pod kątem zadań OLAP. W systemach typu
ROLAP (relational OLAP) dominują schematy logiczne zwane modelem gwiazdy lub
płatka śniegu. W przypadku implementacji czysto wielowymiarowej (MDDB) modele
te mogą nie być jawnie dostępne, jednak nadal dobrze jest myśleć o nich jako o
źródle danych dla kostek wielowymiarowych.
Przypomnijmy podstawowe terminy dotyczące danych wielowymiarowych:
Model gwiazdy wygląda następująco:
Centralna tablica faktów zawiera rekordy oznaczające poszczególne fakty
podlegające analizom i podsumowaniom. Wokół tej centralnej tablicy znajdują się
(zwykle znacznie mniejsze) tablice opisujące poszczególne wymiary. Atrybuty
wymiarów to kolumny tablic wymiarów, natomiast tablica faktów zasadniczo
zawiera tylko miary faktów (czyli wielkości podlegające podsumowaniom) i klucze
do tablic wymiarów.
Z zasady tablica faktów jest największa (miliony rekordów) i szybko
przyrastająca, natomiast tablice wymiarów podlegają niewielkim zmianom. Są to
zwykle przyrosty danych; w przypadku konieczności zmiany opisu elementu danego
wymiaru stosujemy zasady retrospekcji - por. następny rozdział. Warto zauważyć,
że czas to również wymiar wyrażony tablicą. Tablica zawierająca kolejne dni z
kalendarza może wydawać się mało użyteczna, ale często ułatwia budowę hurtowni
i zapewnia przejrzystość schematu. Ponadto pozwala na nadawanie własnych
atrybutów poszczególnym dniom (np. dzień wolny od pracy w danej instytucji).
Normalizacja schematu gwiazdy poprzez modelowanie atrybutów za pomocą
kolejnych tablic prowadzi do modelu płatka śniegu. Model płatka śniegu odtwarza
hierarchię wymiarów, czyli sytuację, w której pewien
wymiar ma wiele różnych poziomów szczegółowości. Np. wymiar "produkt"
może mieć atrybut "producent", modelowany oddzielną tablicą, a
równolegle - atrybut "grupa produktów", również modelowany tablicą.
Modelowanie wielowymiarowe danych (gwiazda, płatek śniegu) wykonywane jest
w celu dokonywania analiz typu OLAP. Projektując tę część hurtowni danych, warto
zastanowić się nad uzasadnieniem biznesowym tworzenia hurtowni tematycznych. Przykładowe (zakładane)
efekty i środki do ich uzyskania to:
Projektując hurtownię tematyczną, dokonujemy najpierw pojęciowego
modelowania potrzeb analityków, by następnie wybrać odpowiednią część
centralnej hurtowni danych i zaprojektować proces tworzenia i aktualizacji
hurtowni tematycznej. Model pojęciowy odzwierciedla związki między pojęciami
związanymi z działalnością przedsiębiorstwa, np.:
Przykładowa technika modelowania pojęciowego hurtowni tematycznej to modelowanie punktowe. Informacje na temat pojęć, do których dostęp ma analityk, przedstawiane
są w postaci diagramu, gdzie:
W modelu punktowym zapisujemy ponadto obok informacje na temat m.in.:
Retrospekcja to pojęcie dotyczące sposobu
traktowania zmian w danych. Przypomnijmy, że hurtownia danych z założenia ma charakter
nieulotny, tzn. informacja, która do niej trafi, nie powinna być usuwana ani
zmieniana. Źródła danych jednak są zmienne w czasie i może się zdarzyć, że
zachodzi konieczność zmiany informacji (np. o adresie zamieszkania klienta). W
zależności od sposobu traktowania takich zmian, retrospekcja może być:
Teoretycznie wszystkie dane powinny podlegać retrospekcji prawdziwej.
Prowadzi to jednak do znacznych utrudnień technicznych: proste zapytania stają
się skomplikowane, gdyż muszą uwzględnić informacje z tabel pomocniczych
zapisujących historię zmian. Z drugiej strony, fałszywa retrospekcja może nam
zaburzyć wyniki analiz. Jeśli np. analizujemy obroty klientów w zależności od
ich adresu zamieszkania, to przeprowadzka danego klienta spowoduje nagłe
przypisanie wszystkich jego transakcji do nowego miejsca zamieszkania (co jest
nieprawdą).
Strona przygotowana
przez Jakuba Wróblewskiego, 2006.
Modyfikacje dokonane
przez Dominika Ślęzaka, 2008/09.