Pokazywanie postów oznaczonych etykietą Dane. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą Dane. Pokaż wszystkie posty

czwartek, 9 stycznia 2014

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

Technologia OLAP dla analityków (2)


Geneza technologii OLAP i …Tabeli Przestawnej

W pierwszej części „Kłótni …”, która to część była w istocie wprowadzeniem do trudnych (ale bez przesady, wszystko to jest dla ludzi), informatycznych problemów technologii OLAP, opisaliśmy dobroczynne funkcjonalności Tabeli Przestawnej dla analityków.

To punkt wyjścia do rozważań o technologii. Żeby dobrze zrozumieć jej sens, najlepiej prześledzić, po co i jak ta technologia się rodziła.

Tabelę przestawną wynalazł Amerykanin z Cambridge, Massachusetts,  Salas Pito na przełomie lat osiemdziesiątych i dziewięćdziesiątych. Zauważył on, że znajdująca się w arkuszu elektronicznym tabela danych, jeśli ma odpowiedni układ, jest gotowym wzorcem danych do analizy. Analizę można przeprowadzać przez m a n i p u l o w a n i e  czyli - przenoszenie myszką w odpowiednie miejsca nazw kategorii, co jest najszybszym sposobem zmiany modelu analizy.

Koncepcja Pito została przez firmę Lotus wdrożona na platformie Windows w 1993 roku w arkuszu elektronicznym 1-2-3. Niedługo potem, Microsoft opracował swoją implementację tabeli przestawnej do Excela w wersji 5.

Od chwili swego powstania, tabela przestawna przeszła burzliwy rozwój i okazała się dużo bardziej efektywnym narzędziem analizy, niż języki definiujące modele danych, które były żmudnie tworzone przez ostatnich 20 lat.

Powtórzmy:
Tabela Przestawna służy do:
·        wieloaspektowej, wielowymiarowej i hierarchicznej analizy 
·        wszystkich dostępnych cech 
·        pewnego zbioru faktów.
Specjalista od inteligentnego klikania myszą może więc w ciągu paru minut uzyskać jeden z kilku, kilkunastu czy kilkudziesięciu wariantów – kombinacji cech faktów opisanych sumami wartości ich miar dla tych faktów.

Pozostał problem z efektywnym wprowadzaniem danych do arkusza. Na początku w wielu firmach wprowadzano je po prostu ręcznie. To było jednak nie do zaakceptowania. 

I tutaj zaczyna się ta "całkiem inna bajka".

I co z technologią OLAP, tą rzekomo całkiem inną bajką?

W tym samym czasie, czyli w połowie lat dziewięćdziesiątych ubiegłego wieku rozwijała się koncepcja hurtowni danych oraz ich wielowymiarowa analiza.  Prowadzona przy pomocy skomplikowanych metod, potężnych maszyn liczących i ogromnych nakładów finansowych, na które stać było tylko bogate firmy.
Przynosiło to jednak korzyści usprawiedliwiające wielkie przedsięwzięcie.

Technologia OLAP to po prostu metody, techniki i narzędzia pozyskiwania danych. Po co?
Do analizy. W tabeli przestawnej. Analizy danych „uszlachetnionych”, odpowiednio skompresowanych i zdatnych do bezpośredniego „spożycia” w dalszym procesie – procesie analizy.

Nie tylko w tabeli przestawnej. Nawet nie tylko w Excelu. W Excelu można te dane analizować na najróżniejsze sposoby. W architekturze SOA. Lub w architekturze MOA (błota). Elastycznie, szybko, skutecznie. To jest Excela przewaga konkurencyjna. I źródło zgryzoty producentów systemów raportujących bi – aj. 
Ale skupmy się teraz na głównym nurcie. Od OLAPu do TP.

Technologia OLAP to właśnie skojarzenie tych dwóch wynalazków: hurtowni danych i tabeli przestawnej.

W końcu dwudziestego wieku Tabela Przestawna została  uzupełniona, można powiedzieć – obdarzona - zaawansowanym, najnowocześniejszym na owe czasy oprogramowaniem, całą technologią, która służy zasileniem tejże Tabeli w zawsze aktualne fakty, bogate w atrybuty i miary.

Spotkały się dwie bajki, które były bajkami niedoskonałymi i złączyły się w bajkę – światowy hit.


Ale pamiętajmy: Tabela Przestawna jest pointą tej nowej bajki. Jej bajka otworzyła tamę do burzliwego rozwoju analizy i jest teraz źródłem innych, już nie tak pasjonujących, przynajmniej dla analityka, ale za to bardzo intratnych dla ich autorów bajek. 
Dla nowych bajkopisarzy, którzy swoje bajki promują.

Ale to jeszcze nie koniec!

poniedziałek, 9 maja 2011

D jak Dane

Rozwijamy słowo IDEA. Druga litera. Już mamy I D ....

Przypominam: O danych. O profesjonalizmie. O Excelu. A właściwie nie całkiem. Teraz raczej o „Excelu w kontekście”.
Jednak jeśli chcemy spojrzeć w drugie oblicze Światowidowego Ducha Profesjonalizmu, musimy zacząć od podstaw.

Zacząć…

Może taka scenka?

Słonecznego ranka, w sobotę, podczas wiosennych porządków w ogródku, pan Zygmunt, właściciel segmentu na podwarszawskim osiedlu, zauważył dziwne, białe plamy na świerku, rosnącym w rogu.
Zaniepokojony, rzucił grabie i poleciał po komórkę, aby zrobić zdjęcie gałązce z plamami. Wsiadł w samochód i popędził do oddalonego o kilkanaście kilometrów marketu budowlanego, chwalącego się, że jego doradcy rozwiążą każdy problem.

I rzeczywiście. Doradca, po obejrzeniu zdjęcia i krótkiej rozmowie poradził kupić środek grzybobójczy do rozpuszczenia w wodzie i ręczne urządzenie do oprysku.
Klient podszedł do kasy, gdzie zapłacił za lekarstwa na swoje kłopoty niecałe 30 złotych gotówką.
Kasjerka, zanim wydała mu paragon, stanowiący jednocześnie dowód zakupu i podstawę ewentualnej rękojmi, poprosiła o kod pocztowy.

Pan Zygmunt, zadowolony, z uczuciem ulgi, bez oporów podał kod i wrócił do swojego ogródka i do swoich spraw. Świerk był uratowany.

Co tu jest ciekawego?

Ktoś przytomny w zarządzie firmy handlowej postanowił zbierać dane. Wdrożył genialnie prostą procedurę. Nobel! I w systemie informatycznym firmy dokonał się właśnie akt

zapisania danych o ... f a k c i e.

Można teraz rozważać przez kilka rozdziałów, co można z taką informacja zrobić, ile to daje korzyści. Jeśli się ją przetworzy i wyciągnie odpowiednie wnioski. No i j a k to zrobić. Ale na to trochę za wcześnie.
Na razie skupmy się na samym fakcie.

Fakt

Pojęcie podstawowe w analizie biznesowej.

Paragon, który zawiera informacje o pozycjach zakupu, ilościach, cenach, podatku VAT, dacie (i godzinie!) oraz wartości zakupu został uzupełniony o ważną daną. O miejscu zamieszkania klienta z dokładnością do urzędu pocztowego, czyli o kodzie pocztowym.

Fakt. Pojęcie podstawowe. Ale można je rozebrać na czynniki jeszcze bardziej pierwotne. I pokazać,
jakie składowe musi mieć taki zestaw danych, żeby był faktem. Bo nie wszystkie dane to fakty.
Najważniejszą cechą faktu nie jest bynajmniej ten sprytnie zdobyty, kod pocztowy.

Miara

Najważniejsze jest, by fakt posiadał składową o nazwie m i a r a. Wartość zakupów. A właściwie, wartości zakupów na poszczególnych pozycjach. Bo mamy tu do czynienia z faktem złożonym.
Bez miary nie ma faktu. Możemy mieć mnóstwo danych, które nie są faktami. Pan Zygmunt mógł pójść do tego sklepu, ale nic nie kupić. Doradca mógł nie mieć dla niego czasu, albo nie wiedział, co poradzić na dziwne, białe plamy. I pan Zygmunt wrócił z niczym.
Przy wyjściu przez bramkę „bez zakupów”, ochroniarz mógłby go nawet zapytać o kod pocztowy. Zakładając nawet, że rozczarowany klient miałby ochotę odpowiedzieć, to na co taka informacja mogła się komu przydać? Nie ma ona miary. Sklepy nie robią jeszcze analizy ruchu zwiedzających bez zakupów. A może robią? Ale my się tym nie zajmujemy.

Tak więc fakt musi mieć miarę. Minimum jedną. Czasem kilka. W omawianym przypadku może to być liczba sztuk zakupionych produktów, liczba asortymentów, podatek VAT w rozbiciu na asortymenty, jeśli stawki są różne.

Miara - to liczba, określająca w jakiś sposób stopień wagi faktu czyli coś w rodzaju jego ciężaru gatunkowego. Żeby można było porównać zakup pana Zygmunta z innym zakupem. Dodać je razem. Dodać wszystkie zakupy z danego dnia. Tygodnia. Wszystkie zakupy dla kodu pocztowego, który podał pan Zygmunt. Wszystkie zakupy dla opryskiwaczy. Albo obliczyć średnią. Albo odszukać zakup największy.

Atrybut

Jeśli mamy miarę, dysponujemy faktem biznesowym. Ale fakt musi mieć jeszcze jedną składową. Przynajmniej jedną. To składowa, którą określmy nazwą atrybut.

Atrybutem może być właśnie kod pocztowy. Ale również nazwa produktu lub jego indeks. Data zakupu. Razem trzy atrybuty.
Można również uzyskać atrybuty pochodne. Można na przykład rozszyfrować kod pocztowy i uzyskać atrybut – „dwa pierwsze znaki kodu”. Będziemy mieli wówczas informację nie tylko o urzędach pocztowych ale o jednostkach terytorialnie większych.
Również data może być źródłem co najmniej dwóch pochodnych atrybutów: rok i miesiąc zakupu.
Dodajmy jeszcze, że atrybut nazywany jest jeszcze kilkoma imionami: kryterium, cecha, wymiar.

Co począć z takim faktem?

W ten sposób wyprawa pana Zygmunta stała się źródłem danych o fakcie, który ma:

Siedem atrybutów:
data, miesiąc, rok zakupu, kod pocztowy, dwa znaki kodu, nazwa artykułu, cena

i

dwie miary:
wartości zakupu netto asortymentu i ilości zakupu asortymentu. Podatki sobie darujemy.

Jeśli zgromadzimy w Excelu dane o faktach z pewnego okresu, dostaniemy następującą tabelkę:

Tabela Faktów



Skąd się te dane tam wzięły? Na pewno nikt ich tam nie będzie wklepywał z klawiatury. Nie te czasy. Ale o tym sobie porozmawiamy później.
Teraz jednak odpowiedzmy sobie na dwa podstawowe pytania:

Czy osiągnęliśmy cel, mając takie dane?
Czy takie ułożenie faktów jest wygodne, czy też należałoby układ ulepszyć?
Rozważmy to po kolei.

Pytanie 1: Czy taka tabelka stanowi dobry punkt wyjścia do analizy?

Odpowiedź jest pozytywna. Spójrzmy, co dostaliśmy: Każdy fakt, opisany w jednym wierszu o stałej strukturze, posiada siedem atrybutów i dwie miary. Skupmy się na jednej mierze: wartości sprzedaży netto, którą określimy po prostu sprzedażą.

Możemy teraz sumować miarę ogółem (całkowita sprzedaż netto), oraz według poszczególnych atrybutów. Np. wartość sprzedaży opryskiwaczy, wartość sprzedaży w kwietniu, wartość sprzedaży w 2010 roku. No i wartość sprzedaży dla kodu 00, czyli śródmieścia Warszawy.
Dysponujemy wiedzą o sprzedaży zarówno w czasie, w zakresie asortymentu, jak i w zakresie miejsca zamieszkania naszych klientów.

Możemy planować zaopatrzenie w towary dla różnych okresów - sezonowo – (dla poszczególnych odcinków roku lub miesiąca), jak też profilować nasze akcje promocyjne, kierując je do rejonów, gdzie mamy najwięcej, lub najlepszych klientów.

Pytanie 2: Czy takie ułożenie faktów jest wygodne?

Najpierw, żeby być ścisłym, opiszmy w punktach dobrą formę ułożenia danych.

1. Pierwszy wiersz jest nagłówkiem tabeli.
2. Każda kolumna jest opisana odpowiednim napisem w nagłówku, który określa, jakie dane znajdują się w kolumnie. To nazwa pola lub kolumny.
3. W kolumnie (polu) znajdują się zawsze dane tego samego rodzaju. W naszym wypadku mamy dziewięć kolumn. Siedem atrybutów, dwie miary.
4. W każdym wierszu (rekordzie) znajduje się ten sam zestaw danych. W tej samej kolejności.
5. Wiersze odróżniają się pewnym polem o unikalnej wartości, którego tu, dla jasności obrazu nie umieściliśmy: identyfikatorem wiersza. Na razie pomińmy ten problem.
6. Opisaliśmy każdą tabelkę, która spełnia postulat wygody. Ta konkretna tabelka, ze względu na jej zawartość, treść, jest tabelą faktów.
Bo zawiera zapis zdarzeń biznesowych, zachodzących w czasie, względnie często.
I dlatego interesujących nas, jako analityków biznesowych.
Faktów podlegających analizie.

To nie jedyny rodzaj tabel, jakie występują w analizie biznesowej.
Innego rodzaju tabelki, które są interesujące i ważne, omówimy później.

Porządek. Podstawa profesjonalnej analizy. Odwrotność entropii, czyli chaosu. Ale o tym będzie później.

Czy to wygodne? Tak! To najlepsza forma. Zamiast dowodu, przykład najprostszy.

Jak najszybciej ustalić sprzedaż dla Bielan w roku 2010 ?

Wystarczy skorzystać z filtru Excela: Zakładka Dane i ikonka lejka.
Następnie trzeba odchylić myszką strzałeczkę w prawym dolnym rogu nagłówka kolumny C (Rok) i wybrać rok 2010. Potem to samo zrobić z nagłówkiem kolumny E (pierwsze dwie cyfry kodu pocztowego). Następnie ustawić się w komórce znajdującą się pod ostatnim wierszem w kolumnie I (miara Wartość sprzedaży netto).
Teraz do wyboru: albo skrót klawiszowy {Alt + =} albo kliknięcie na ikonkę z wielką literą sigma – autosumowanie. W komórce I73 pojawi się formuła wyliczająca wartość sprzedaży netto dla żądanych kryteriów:

=SUMY.CZĘŚCIOWE(9;I2:I72)

Analiza faktów dla Bielan i roku 2010




To nie jest dowód, że taka forma jest najlepsza. Ale to jest mocne uzasadnienie. I to na razie musi nam wystarczyć.

 Wydawnictwo Helion - pliki przykładów z wydanych książek informatycznych, jak ściągnąć? Wpis nie sponsorowany Helion wydaje ważne dla mnie ...