Podstawą
większości systemów analitycznych są hurtownie danych. Dane
przechowywane są w tabelach ulokowanych na tradycyjnych serwerach
bazy danych. Najczęściej w architekturze płatków śniegu lub
gwiazd. Czy jest to dobre rozwiązanie? Zdecydowanie tak.
Architektura tego typu pozwala na optymalne wykorzystanie
tradycyjnych silników bazodanowych z punktu widzenia zadań
analitycznych. A czy da się zrobić coś więcej? Przed odpowiedzią
na to pytanie należało by się zastanowić jak w rzeczywistości
działają silniki bazodanowe wiodących dostawców. I czy wszystkie
dobrodziejstwa bazodanowe niezbędne w architekturze OLTP
są
korzystne z punktu widzenia zadań analitycznych. Prawdopodobnie
takie pytanie zadali sobie twórcy pierwszych narzędzi pozwalających
na implementacje kostek OLAP.
Nie
wchodząc zbyt mocno w szczegóły, jednym z najbardziej
rozbudowanych mechanizmów niezwykle istotnym dla systemów OLTP
jest obsługa sesji. W systemach transakcyjnych dane są praktycznie
bez przerwy dodawane i aktualizowane. Zupełnie inaczej wygląda to w
systemach analitycznych. Dane z punktu widzenia użytkowników są
praktycznie tylko odczytywane, nie potrzebny jest rozbudowany
mechanizm obsługi sesji, ponieważ użytkownicy nie modyfikują
danych. Jest to jedna z furtek pozwalających na optymalizację.
Okazało się że rezygnując z mechanizmów niezbędnych w systemach
OLTP, lecz nie przydatnych z punktu widzenia OLAP, da się stworzyć
bardzo szybkie mechanizmy dostępu do danych. Wystarczy do
powyższego dodać mechanizm obsługujący miary i wymiary i
... oto mamy to co nazywamy kostką OLAP.
Oczywiście
producenci narzędzi do budowy kostek OLAP prześcigają się między
sobą implementując coraz więcej mechanizmów pozwalających na
przyspieszenie odczytu danych. Silniki OLAP posiadają mechanizmy
agregacji danych, przechowywania danych w pamięci RAM, itp.
Poniżej
znajduje się grafika obrazującą potencjalny rozwój systemów
analitycznych w przedsiębiorstwie:
I
Po wdrożeniu systemu informatycznego, pierwsze raporty i analizy
wykonywane są na danych transakcyjnych (OLTP)
II
Jeżeli ilość danych jest zbyt duża i raporty nie wykonują się w
czasie akceptowalnym przez użytkownika, czas na implementację
hurtowni danych.
III
Implementacja hurtowni danych na pewno znacząco przyspieszyła
raporty i analizy, jednak możliwe że nadal istnieją podzbiory
danych tak duże że wydajność wykonywanych na nich zapytań nie
jest satysfakcjonująca. W tym momencie przychodzi czas na kostki
OLAP. Pobiorą dane z hurtowni w (zazwyczaj nocnym) procesie
ładowania kostki, i pozwolą na bardzo szybki odczyt w momencie
kiedy raport lub analiza będą ich potrzebować.
Brak komentarzy:
Prześlij komentarz