Przejdź do głównej zawartości

Technologia OLAP dla analityków (3)

Technologia OLAP – to takie proste

Powiedzieliśmy już, jaki CEL ma technologia OLAP. To technologia uzyskiwania danych w postaci najbardziej przydatnej do analizy biznesowej. 

Skrót OLAP oznacza OnLine Analitycal Processing, czyli, po prostu, przetwarzanie (danych dla celów) analizy na bieżąco.
Skrót ten powstał, jako odróżnienie od innego procesu, OnLine Transactional Processing (OLTP), czyli bieżącego przetwarzania transakcji. 

Przetwarzanie transakcji oznaczało systemy obsługi bieżącej działalności przedsiębiorstwa: wystawianie faktur, rejestrowanie płatności, ruchów w magazynie, księgowanie wszystkich zdarzeń gospodarczych. Na bieżąco.

Dodatek „na bieżąco” – to oczywiście chwyt marketingowy producentów tych systemów, a jednocześnie postulat funkcjonalny. Konkurencyjny biznes znajduje się pod presją czasu. Szybkość reagowania na zdarzenia jest krytyczna.

Dzisiaj termin ten, wobec wszechobecnej funkcjonalności „na bieżąco” ma już wyłącznie znaczenie historyczne. Podobnie z innymi wynalazkami. Skoro wszyscy mają komórki, nikt nie reklamuje „łatwej łączności na bieżąco”. Teraz ten środek łączności musi się odróżniać czymś innym. Na przykład – możliwością oglądania telewizji w autobusie, nie tyle na bieżąco, co na stojąco.

A w analizie biznesowej oczywiście taka presja też występuje. Stąd też ukuto analogiczny termin: OLAP. Ale co by nie powiedzieć, presja jest zdecydowanie mniejsza. Obliczenie KPI dla zestawu parametrów biznesowych, takich, jak produkt, najważniejsza grupa klientów, kwartał może być czasem sprawą gardłową. Ale chyba jednak rzadko. Najczęściej wykonanie tego zadania dopiero po wypiciu kawy będzie zupełnie wystarczające.

Systemy OLAP odróżniają się jednak od systemów OLTP również ważniejszymi cechami. Operują na danych w dużym zakresie czasu. W analizie nie tylko bieżące zdarzenia ale i historia jest ważna. Ponadto dane te powinny być dostosowane do szybkich odpowiedzi na różnorodne, często trudne do przewidzenia, pytania.

W systemach transakcyjnych (OLTP) transakcje są ściśle zdefiniowane już na etapie projektu. A więc sposób komunikacji z systemem jest wynikową tych definicji.

W systemach analitycznych (OLAP) – mamy chronologicznie gromadzone zasoby danych, które jeszcze nie są informacją przydatną do zarządzania. Projektant ma więc za zadanie stworzyć system, który efektywnie udostępni te dane. Co to znaczy – efektywnie? To znaczy – wygodnie i szybko. Tak, żeby zaspokoić potrzeby informacyjne kierownictwa nie wzbudzając ich zniecierpliwienia, ułatwiając im zarządzanie.

Jak to zrobić?
Punktem wyjścia jest … Tabela Przestawna. Mianowicie - trzeba te dane zorganizować w taki sposób, żeby mogły być szybko, najlepiej bezpośrednio, na bieżąco - wykorzystane przez Tabelę Przestawną. Pamiętacie? Miary i wymiary!

To rodzi potrzebę przetwarzania baz transakcyjnych do postaci bazy analitycznej, zwanej tradycyjnie Hurtownią Danych (HD) oraz do specjalnych obiektów analitycznych, zwanych kostkami OLAP. Niektórzy specjaliści BI rozdzielają te dwa obiekty (HD i kostki OLAP)na dwie warstwy danych analitycznych. My je będziemy traktowali, jako jedną warstwę danych analitycznych (WDA), składającą się z dwóch rodzajów obiektów: Hurtowni Danych (HD) i kostek OLAP.

Hurtownia Danych – to w naszym ujęciu - dane analityczne w formie relacyjnych baz danych. Bazy te są zorganizowane wokół tabel faktów, zawierających pola miar i pola identyfikatorów wymiarów. Za pośrednictwem tych identyfikatorów tabela faktów jest powiązana ze słownikami w strukturę gwiazdy (gdy każdy identyfikator wymiaru w tabeli faktów jest połączony ze słownikiem tego wymiaru) lub płatka śniegu (gdzie struktura tabel jest dużo bardziej swobodna).
To jest w istocie baza typu ROLAP czyli Relational OnLine Analitycal Processing.

Kostki OLAP – to coś w rodzaju konstrukcji przestrzennej, bardziej zwartej niż HD, a więc bardziej efektywnej, którą tworzy się właśnie z „szerokiej” tabeli (patrz tekst: Kłótnia….), utworzonej z kolei z tabeli faktów powiązanej ze słownikami.

Dlaczego kostka? Ponieważ można ją opisać, ograniczając się do przykładu trójwymiarowego, właśnie, jako kostkę albo układ sześcianów z podziałką. Wyobraźmy sobie przestrzenny obszar, którego trzy, wzajemnie prostopadłe wymiary,  są opisane np. kolejno - przez miasta, lata i produkty, tworząc podziałki miast, lat i produktów.

W jednym kierunku odznaczyliśmy: Warszawa, Wrocław, Opole; w drugim lata 2011,2012,2013, w trzecim Monitor X2011, Monitor X2012, Monitor X2013. Utworzyliśmy trójwymiarowy układ współrzędnych. Każdy punkt tej przestrzeni może być opisany przez ciąg wartości atrybutów: {Warszawa, 2011, Monitor X2011}, {Wrocław, 2012, Monitor X2013}, {Opole, 2013, Monitor X2012}….itd.

Powiedzmy, że każdy punkt powstały z przecięcia linii podziałek będziemy nazywać ciągiem. Ciąg – to po prostu lista trzech wartości trzech wymiarów: np. Warszawa, rok 2013 i monitor X2013.
Czy to już jest kostka OLAP? Jeszcze nie. Aby kostka OLAP była kompletna, potrzebne jest coś jeszcze. Jak pamiętamy - tabela faktów zawiera miarę. Każdej trójce wartości wymiarów przypisana jest jedna wartość miary.

Mamy więc ciąg i wartość miary dla tego ciągu. Czyli jeden element kostki OLAP.

Skończony zbiór wszystkich takich elementów, ciągów (list wartości wymiarów) oraz wartości miary dla danego ciągu – to właśnie kostka OLAP.

Taki obiekt – to zbiór uporządkowanych danych – a więc to chyba … baza danych? Tak, oczywiście,  jest to jest właśnie baza danych. Typu MOLAP czyli Multidimensional Analitical Processing.

Powiedzmy jeszcze, że kostki OLAP (a także bazy ROLAP) mogą oczywiście zawierać więcej, o wiele więcej, niż trzy wymiary. Np. …64 wymiary. Oznacza to, że szeroka tabela ma wówczas 64 pola wymiarów, a kostka ma punkty opisane ciągiem 64 wartości wymiarów.

Technologia OLAP może być opisana, jako zespół dwóch komponentów: (1)aparat zasilający  warstwę danych analitycznych WDA i (2) platforma analizy danych z warstwy DA.

Najbardziej zaawansowaną i wszechstronną platformą analizy danych jest właśnie Tabela Przestawna, stanowiąca specjalny obiekt Excela, tej najbardziej zaawansowanej, najbardziej efektywnej i najbardziej popularnej platformy analizy danych.

Podsumowując: technologia OLAP jest więc zestawem metod i technik analizy danych, podporządkowanym celowi – efektywnej analizie danych dostarczającej informacji potrzebnej do zarządzania.


czwarta część cyklu o technologii OLAP

Komentarze

  1. W sobotę 8-mego marca uczestniczyłem w obronie prac dyplomowych naszych absolwentów z edycji II.
    Kilka prac zostało już zastosowanych w ich firmach, z dobrymi efektami.
    Być może napiszę ogólne omówienie tych prac. To naprawdę fascynujące doświadczenie.

    Taki dialog.
    Członek komisji:
    Wdrożył pan swoje rozwiązanie w swojej firmie?
    Autor pracy:
    Tak, wszystko działa.
    (A sprawa dotyczy rozwiązania o wszelkich cechach SOA: Maile zasilają hurtownię danych zbudowaną na platformie MySQL, raporty w Excelu)
    Członek komisji:
    I co pan teraz robi w dziedzinie, której rozwiązanie dotyczy?
    Jeśli chodzi o obsługę techniczna, właściwie nic. Kliknę parę razy.
    Skupiam się na analizie raportów.
    -----------------------------------------------------
    Architektonicznie bezbłędna aplikacja rozproszona, wykonana samodzielnie przez czlowieka, który wcześniej znał nieźle Excela.
    Były, zaawansowany użytkownik.
    Obecnie - profesjonalny analityk, który nie boi się zbudować sobie DMA.

    Ale to oczywiście o niczym nie świadczy.
    Ot, taki case....

    OdpowiedzUsuń

Prześlij komentarz

Popularne posty z tego bloga

Wstęp. Do czego służy Excel?

Witam wszystkich użytkowników Excela.
Na początek wypada się przedstawić.
Nazywam się Krzysztof Rumiński (http://www.goldenline.pl/krzysztof-ruminski). Postanowiłem, stosownie do najnowszej mody, prowadzić bloga o Excelu.
Jestem inżynierem mechanikiem, informatykiem, specjalistą w dziedzinie, zwanej wdzięcznie „Business Intelligence”, w skrócie BI.

Co to jest Business Intelligence (BI)? Panuje teraz moda na angielszczyznę. Tak, jak na przełomie osiemnastego i dziewiętnastego wieku, panowała wśród szlachty moda na francuszczyznę, zaś w średniowieczu mieliśmy do czynienia z „makaronizmami”. Wyjaśnijmy więc, co ja rozumiem przez ten termin, bo bezrefleksyjne używanie współczesnych makaronizmów jest źródłem wielu nieporozumień.
BI to dziedzina informatyki wspomagająca przygotowanie informacji przydatnej do zarządzania na podstawie danych.
Anglosasi często słowo information zastępują terminem intelligence. Wyjaśnienia encyklopedyczne i słownikowe są tu mylące. Służba Wywiadu, czyli Agencja …

Referencje dla architektury i podejścia SOA

Od 2012 roku prowadziłem na swoim blogu akcję promowania architektury i podejścia SOA, której koncepcję opublikowaliśmy we trzech , współtwórcą tej architektury, Wojciechem Gardzińskim oraz Jakubem Rumińskim(zbieżność nazwisk nie całkiem przypadkowa, ale chyba nie przynosząca mi wstydu), analitykiem i konsultantem międzynarodowych korporacji, który ją weryfikował i uwiarygadniał z punktu widzenia realiów światowego biznesu.

Teraz czas na innego rodzaju uwiarygodnienie.

Architektura i podejście SOA nie jest tylko nową, oryginalną koncepcją.
Jest produktem komercyjnym, posiadającym pierwsze, ale poważne i sprawdzone na przestrzeni co najmniej dwóch lat, referencje biznesowe w dużej instytucji publicznej.
Podaję jednak referencje z trzech kolejnych lat.
Wyłania się z nich w sposób dla nieco zaskakujący, konsekwentna linia rozwojowa podejścia SOA.
To właściwie logiczne: Wzięła się nie z "nagłego olśnienia".
Wyłoniła się, jako logiczny (i nieubłagany) skutek naszych doświadczeń, …

Codd'a 12 zasad zarządzania bazą danych dla OLAPu

(Codd's paper)
Jako glossa do nieudanej ale burzliwej "dyskusji" o tym, czym jest OLAP i czy tabela przestawna i OLAP to inne bajki, zamieszczam podstawowy tekst tego Ojca Założyciela dzisiejszej technologii bazodanowej Edgara Franka "Teda" Codd'a.
W tekście wytłuszczam te fragmenty, które bezpośrednio odnoszą się do przedmiotu sporu. W komentarzach (kursywą) wyjaśniam, jakie wypowiedzi mojego adwersarza i moje mają tu zastosowanie. Dyskusja ta ma charakter nieco abstrakcyjny, ale dla genezy dzisiejszych "problemów z analizą biznesową", ma fundamentalne znaczenie. Moim skromnym zdaniem. Tłumaczenie zasad z angielskiego tekstu - własne.
Zaczynam: W 1985 Edgar F. Codd napisał artykuł, określający zasady dla Systemów Zarządzania Relacyjnymi Bazami Danych (RDBMS systemów zarządzania), które zrewolucjonizowały branżę IT.
Pamiętam, jak czytałem jeszcze wcześniejsze teksty Codda, wówczas pracownika IBM, w materiałach szkoleniowych tej firmy, jeszcze nie z…