Hurtownie danych Autorzy Marcin Starczewski Marcin Zręda Plan prezentacji Wprowadzenie Teoria hurtowni danych Architektura Zagadnienia związane Technologia OLAP Budowa i wdrożenia hurtowni danych Podsumowanie 2 Definicja hurtowni danych (1/2) uporządkowany tematycznie, zintegrowany, zawierający wymiar czasowy, nieulotny. zbiór danych wspomagających podejmowanie decyzji. Jest to definicja autorstwa Williama H. Inmonna 3 Definicja hurtowni danych (2/2) Do „oficjalnych” czterech punków definiujących hurtownie danych często dodawany jest piąty punkt: Hurtownia danych ma wspomagać przetwarzanie informacji dla celów strategicznych i analitycznych (w przeciwieństwie do systemów transakcyjnych realizujących przetwarzanie dla celów operacyjnych) 4 Uporządkowanie tematyczne Dane przechowywane są niezależnie od aplikacji, która je wygenerowała np.: Obsługa klientów jest realizowana przez różne aplikacje w zależności od tego czy są to klienci indywidualni czy tez instytucje. Natomiast w hurtowni są to jedne dane „Klienci” (oczywiście jest gdzieś wyróżnik jaki to typ klienta) 5 Zintegrowany Różne aplikacje mogą w różny sposób interpretować i zapisywać dane np.: płeć mogą zapisywać jako M/K, M/F, 1/0. Natomiast w hurtowni dane te musza być ujednolicone w sposobie pomiaru ich wartości tzn. dane dotyczące płci musza być przetłumaczone na jeden typ zapisu – nie jest istotne, który ważne aby był jednolity dla wszystkich danych. 6 Zawierający wymiar czasowy W hurtowniach danych dane maja być dokładne w dowolnie wybranym momencie tzn. dane z maja będą takie same niezależnie czy zażądamy tych danych w czerwcu czy listopadzie. Dotyczy to również pobierania danych – jeżeli dane pobraliśmy poprawnie do hurtowni danych to nie są one już aktualizowane. 7 Nieulotność danych W hurtowniach danych możemy: ładować dane albo korzystać z nich. W odróżnieniu od typowych aplikacji gdzie dane mogą być usuwane, aktualizowane i wprowadzane przez cały czas. Dzięki temu w hurtowniach nie obowiązuje nas już transakcyjność, zarządzanie blokadami... 8 Kto tego potrzebuje? Menadżerowie – Analitycy – – Bieżąca analiza sytuacji podmiotu Prognozy Stratedzy firmy – 9 Do zarządzania taktycznego Tworzenie planów strategicznych krotko i długookresowych. Po co hurtownie danych 10 zestawienia (zbiorcze, porównawcze, okresowe) analizy statystyczne analizy trendów zależności między danymi planowanie i kontrola celów ... Statystyki Co najmniej 50% danych w bazach operacyjnych służy potrzebom analitycznym i podejmowaniu decyzji 40% raportów produkcyjnych jest niewykorzystywana (raport IBM, 1995) 30% raportów jest używana nie zgodnie z ich przeznaczeniem (raport IBM, 1995) Kierownictwo Strategiczne ocenia dokładność i użyteczność danych na 2 w skali (od 1 do 10) (raport IBM, 1995) 11 OLTP a hurtownie danych OLTP (On Line Transaction Processing) – każdy biznesowy system informatyczny pracujący w sposób transakcyjny Dlaczego OLTP nie może zastąpić hurtowni danych: Ukierunkowana na przetwarzanie dużej liczby krótkich transakcji a nie na wspomaganiu procesu decyzyjnego. Skoncentrowane na obróbce małych porcji danych w jednym momencie Stan zmienia się z sekundy na sekundę 12 Jaka powinna być hurtownia danych 13 Powinna być łatwa w użyciu Stanowić jedyne źródło informacji Synchronizować dane między oddziałami firmy Integrować dane w organizacji Stworzona do celów analitycznych Architektura hurtowni danych (1/4) Warstwa zasilania (TSA – Temporary staging area) – Warstwa danych właściwych (hurtownia danych) – 14 Zajmuje się przetwarzaniem danych, ich czyszczeniem i standaryzacją, łączeniem. Dalsza obróbka, generowane agregaty danych, wykonywane raporty oraz ostateczna obróbka danych przed ich udostępnieniem. Architektura hurtowni danych (2/4) Składnica danych (Data Mart) – Jej celem jest przyspieszenie dostępu do najczęściej wykorzystywanych danych. Zaprojektowana pod kątem szybkości a nie elastyczności Obsługuje standardowe zapytania Niewielka liczba danych – najczęściej agregaty. Jest swojego rodzaju cache’m – przechwytuje najczęściej zadawane kwerendy. 15 Architektura hurtowni danych (3/4) Operacyjny magazyn danych (ODS – operation Data Store) – Jego celem jest udostępnienie zebranych i zintegrowanych danych 16 Jest źródłem informacji operacyjnych, dane pochodzą z różnych aplikacji Mała liczba danych, ma odpowiadać na pytania dotyczące aktualnych danych Może być zastąpiony przez zmodyfikowany TSA Architektura hurtowni danych (4/4) Ostania warstwa - warstwa udostępniania danych (front-end) Narzędzia analityczne – Generatory zapytań – Specjalizowane aplikacje – Serwery www umożliwiające dostęp do danych poprzez przeglądarkę www Czyli wszystko to do czego ma dostęp użytkownik hurtowni – 17 Podział danych na warstwy Dane detaliczne w firmie pożerają ogromne przestrzenie dyskowe (np.:dane z czytników kodów kreskowych w supermarkecie mogą zajmować przestrzeń około 500 GB w ciągu roku !). Zatem należałoby przesiać te dane przez jakiś rodzaj sita aby pozostawić tylko istotne informacje np.: pozostawić dane sumaryczne na poziomie wartości godzinnych. 18 Agregaty 1/2 Agregaty (podsumowania) są generowane z danych detalicznych i są tak przygotowywane aby odpowiadały na najczęściej zadawane pytania przez użytkowników hurtowni. Agregaty mogą być wielowarstwowe tzn.: najpierw z danych detalicznych tworzymy dane wstępnie zagregowane a następnie mocniej zagregowane. 19 Agregaty 2/2 Dla umożliwienia właściwej analizy danych agregaty generowane są w kilku przekrojach. Jednak zawsze może zdarzyć się, że będą potrzebne dane, których nie ma agregacie wtedy będzie trzeba sięgnąć po archiwum (np. taśmowe) i wyciągnąć potrzebne informacje z danych detalicznych. Jeżeli takie zapotrze bowanie zdarza się często np. co kwartał warto przemyśleć czy nie zmienić struktury agregatu. 20 Metadane 1/2 tłumaczą nieprzyjazne dla użytkownika pojęcia informatyczne na język biznesu; informują jakie dane są aktualnie dostępne; są katalogiem dostępnych informacji. Powinny zawierać : opis danych zawartych w hurtowni; opis dostępności danych; nazwę systemu, z którego pochodzą dane; 21 Metadane 2/2 22 opis operacji poczynionych na danych podczas zasilania hurtowni; wersję metadanych, które metadane obowiązywały w danym okresie; metryki dotyczące danych, pozwalają określić przybliżony czas wykonywania zapytania; historia ładowań i awarii; zależności logiczne pomiędzy danymi. Eksploracja baz danych (Data mining) 23 odkrywanie zależności ukrytych w zbiorach danych; poszukiwanie asocjacji, sekwencji, klasyfikacji, grupowanie; znajdowanie reguł dotyczących zachowań klientów; przewidywanie zapotrzebowania na dany produkt; wykrywanie nadużyć i nieprawidłowości w działaniu systemu. Eksploracja baz danych (Data mining) 24 Narzędzia wspomagające projektowanie 1/2 25 Narzędzia wspomagające projektowanie i modelowanie systemów. Winny być używane we wszystkich fazach budowy hurtowni danych. Za ich pomocą zbieramy wymagania użytkowników, analizujemy je. Wykonujemy często reverse engineering w istniejącym systemie informatycznym przedsiębiorstwa. Dobre narzędzie tego typu powinno też ułatwiać dokumentowanie prac oraz zarządzanie wersjami. Możemy tu zaliczyć wszystkie poważne narzędzia CASE. Narzędzia wspomagające projektowanie 2/2 26 Repozytoria metadanych. Ta kategoria narzędzi ściśle wiąże się z poprzednią. Zadaniem ich jest przechowywanie i zarządzanie metadanymi, nie tylko tymi powiązanymi z hurtownią lecz także tymi, które należą do innych systemów informatycznych w przedsiębiorstwie. Powinny być zintegrowane z pozostałym oprogramowaniem do zarządzania hurtownią, ideałem jest sterowanie systemem poprzez zmianę metadanych (zmiana metadanych powoduje zmianę zasilania hurtowni). Narzędzia wspomagające zasilanie hurtowni 1/4 Służą do : pozyskiwania i czyszczenia danych; transferu danych przez sieć; ładowania danych do hurtowni. Dobrze aby potrafiły: ujednolicić sposób kodowania atrybutów z różnych systemów; dopasować rozmiary pól do przychodzących danych. 27 Narzędzia wspomagające zasilanie hurtowni 2/4 Oprogramowanie typu middleware. Potrzebne aby łączyć systemy heterogeniczne. gateway’e do różnych protokołów sieciowych; sterowniki ODBC (różne bazy danych); sterowniki ISAM (różne typy plików); wszelkie rodzaje translatorów, konwerterów itd. 28 Narzędzia wspomagające zasilanie hurtowni 3/4 Systemy baz danych. Najczęściej do przechowywania danych stosuje się relacyjne bazy danych. Niektórzy producenci serwerów SQL umieszczają w nich specjalne narzędzia zwiększające wydajność obsługi hurtowni. Ale też wielu producentów (RedBrick) oferuje wielowymiarowe bazy, które przechowują dane w postaci tzw. hipersześcianu, który umożliwia łatwe sporządzanie przekrojów i analizy danych. 29 Narzędzia wspomagające zasilanie hurtowni 4/4 Narzędzia analityczne. Są przeznaczone dla końcowego użytkownika, zazwyczaj jest to analityk biznesowy. dla niewielkiej liczby danych np. Microsoft Excel; dla większych wymagań np. Business Objects; analiza matematyczna np. produkty SAS; analiza geograficzna np. MapCAD. 30 Cykl życia hurtowni danych Znacząco różni się od cyklu życia baz transakcyjnych. Zadania: ładowanie i scalanie, dane okresowo ładowane, w czasie ładowania scalanie i ujednolicanie (konwersja typów i formatów, przekształcanie do innego modelu danych; agregacja; dane posiadają stempel czasu; usuwanie, tylko dla okresów już nie potrzebnych. 31 Technologia OLAP OLAP On-line Analytical Processing. model wielowymiarowy, hiperkostka; OLAP przekształca dane z hurtowni na strategiczną informację; model bliższy rozumowaniu człowieka; dane o firmie zgromadzone w jednej „kostce”; hurtownie danych i systemy OLAP wzajemnie się uzupełniają; dzięki prostocie i szybkości analizy zmniejsza się zagubienie w informacji i jej błędna interpretacja. 32 Technologia OLAP Relation-OLAP (ROLAP) 33 wielkie objętości danych (+); łatwa modyfikacja (+); problemy z wydajnością (-); złożoność struktur danych (-); potrzeba stworzenia kopii bazy relacyjnej do celów analitycznych (-); niedoskonałość SQL (-); Technologia OLAP Multidimensional-OLAP (MOLAP) zoptymalizowane struktury danych (+); duża wydajność analizy wielowymiarowej (+); naturalna budowa struktur wielowymiarowych (+); trudna modyfikacja danych (-); mniejsza pojemność (-). Dwa rodzaje baz wielowymiarowych: disk Based (MDB); RAM Based MDB lub RAM Cubes; 34 Technologia OLAP Hybrid-OLAP (HOLAP) Połączenie technologii ROLAP i MOLAP. 35 relacyjna baza danych jako źródło danych; najczęściej przetwarzane informacje w wielowarstwowej bazie (RAM Cubes); minusy są dziedziczone z obu rozwiązań; wydajność większa od ROLAP lecz nie dorównuje MOLAP; HOLAP jest przyśpieszaczem ROLAP. Analiza wielowymiarowa 36 Polega na poddawaniu danych typowym operacjom, takim jak: selekcja, wybór danych które na interesują; projekcja, zmniejszenie liczby wymiarów, prezentowane zagregowane względem pozostałych wymiarów; wycinanie, połączenie selekcji z projekcją; ranking, sortowanie; zwijanie(agregacja miar) i rozwijanie (dezagregacja miar); obracanie, zmiana perspektywy oglądania danych. Budowa hurtowni danych Analiza 37 grupa analityków przychodzi do firmy; przeprowadzają rozmowy, najlepiej z każdym przyszłym użytkownikiem hurtowni; sporządzają wymagania techniczne i biznesowe. Wymagania obecnie najczęściej opisuje się w narzędziu CASE, co ułatwia analizę zależności. Budowa hurtowni danych Projektowanie 38 wykonanie inwentaryzacji dostępnych źródeł danych; dla każdego ze źródeł należy określić formaty przechowywania danych, ich jakość, potrzeby aktualizacji; konstrukcja wstępnego modelu danych; wybór narzędzi; określenie wymagań sprzętowych; oszacowanie objętości danych. Budowa hurtowni danych Budowa i wdrożenie 39 najczęściej realizuje się najpierw projekt pilotowy, obejmujący wszystkie warstwy lecz jego zakres tematyczne jest niewielki; stworzenie modelu danych dla użytkownika końcowego; pisanie aplikacji i tworzenie dokumentacji; przeszkolenie użytkowników i administratorów; rozszerzenie frontu robót. Budowa hurtowni danych Konserwacja często trwa przez cały czas życia systemu i pochłania wielkie koszty; trzeba dostosowywać hurtownię do nowych potrzeb użytkowników. Często budowa hurtowni ma charakter przyrostowy. 40 Przegląd gotowych rozwiązań Oracle Warehouse Builder 41 jako system bazy danych Oracle 8i; aplikacje analityczne; kreatorzy wspomagający działania projektowe; kod generowany jest automatycznie; do tworzenia składnic danych Oracle Data Mart Suite; programy analityczne: OLAP (Oracle Express) i data mining (Oracle Darwin). Przegląd gotowych rozwiązań IBM Visual Warehouse Zawiera szereg narzędzi przeznaczonych do realizacji poszczególnych kroków projektu hurtowni danych. W pakiecie zawarty jest również serwer bazy danych DB2 - platforma, na której może działać hurtownia korporacyjna. IBM oferuje również aplikacje analityczne w technologii OLAP (DB2 OLAP Server) i data mining IntelligentMiner. 42 Przegląd gotowych rozwiązań SyBase Warehouse Studio W jego skład wchodzi ponad dziesięć narzędzi i aplikacji przeznaczonych do obsługi projektu (modelowania, oczyszczania i przenoszenia danych), składowania i zarządzania danymi, tworzenia zapytań i raportów. Jako platformę do działania hurtowni danych Sybase oferuje własny serwer bazy danych Adaptive Enterprise Server. 43 Przegląd gotowych rozwiązań Computer Associates 44 Firma przygotowała pakiet DECISIONBASE: projektowanie modelu danych - ErWin; zasilanie danymi z różnych źródeł - Transformer; metadane – PLANTIUM Repository; narzędzia analityczne, OLAPServer i rozwiązanie bazujące na sieciach neuronowych – Neugents; wiele innych. Wdrożenia Hurtowni Danych 1 45 BPH, Wspólne dzieło BPH i Oracle Polska, wykorzystano bazę Oracle Express. Możliwości generowania raportów finansowych do NBP, dane finansowe zapisywane na zasadzie fotografii. Coca-Cola, InfoViDE był odpowiedzialny za zaplanowanie i budowę systemu analiz i raportów dla firmy. Zakres systemu to raportowanie zagadnień związanych ze sprzedażą oraz produkcją, prognozowanie i elementy budżetowania. Wdrożenia Hurtowni Danych 2 46 Frito Lay Poland, Wykorzystano produkty Oracle, do analizy Oracle Sales Analyzer. Miesięcznie rejestrowanych jest ok. 700 tys. transakcji. Dzięki zbudowanym agregatom dostęp do danych jest bardzo szybki i nie ograniczony wielkością bazy. Rabobank Polska, Wdrożony wcześniej data mart, oparty na technologii OLAP, okazał się niewystarczający. COMP Rzeszów SA zbudował system wspomagający zarządzanie ryzykiem oraz ocenę rentowności działania banku. Podsumowanie 1/2 47 budowa hurtowni to wielkie wyzwanie z uwagi na złożoność technologiczną i organizacyjną; najczęściej trwa dwa, trzy lata, pierwsze wyniki najczęściej po roku; koszty sprzętu i oprogramowania rzędu milionów dolarów; korzyści biznesowe mogą być zerowe lub stuprocentowe. coraz więcej firm decyduje się na taki krok; Podsumowanie 2/2 w USA rynek hurtowni to ponad 40 mld dolarów i szybko rośnie. LITERATURA Internet 48