Hurtownie danych. OLAP. Business Intelligence

April 4, 2018 | Author: Kasia Gruszczyńska | Category: Data Warehouse, Decision Support System, Data Management, Databases, Software


Comments



Description

Akademia Górniczo-Hutnicza im. St.Staszica w Krakowie Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Katedra Automatyki Zaawansowane Technologie Bazodanowe - projekt Hurtownie danych. OLAP. Business Intelligence Katarzyna Gruszczyńska Informatyka Stosowana studia dzienne II-stopnia, rok I, semestr I Kraków, 2008 ... Streszczenie Niniejsza praca dotyczy tematyki hurtowni danych osadzonych w kontekście środowisk Business Intelligence. Technologia Business Intelligence służy wspomaganiu podejmowania decyzji. Hurtownia danych jest specyficznym systemem bazy danych wykorzystywanym w srodowiskach BI Rozdział pierwszy zawiera omówienie zagadnienia Business Intelligence, etapów technicznej implementacji systemu BI, opis architektur, elementów, zadań środowisk Business Intelligence oraz ekonomiczne aspekty wdrożenia. Kolejny rozdział zawiera wprowadzenie do tematyki hurtowni danych, zasad, metod projektowania hurtowni danych ze zwróceniem uwagi na podstawowe wzorce projektowe m.in. schemat gwiazdy oraz aspekty techniczne wdrozenia. W dalszej części pracy przedstawiono istniejace rozwiązania BI oraz korzyści z wdrażania tej technologii i hurtowni danych. Dokonano porównania operacyjnych baz danych przetwarzania transakcyjnego OLTP i baz OLAP przetwarzania analitycznego. Poruszono kwestię oprogramowania służacego do zasilania hurtowni danych informacjami z systemów źródłowych nazywanego ETL oraz dokonano krótkiego porównania dostępnych narzędzi ETL oraz narzędzi dla użytkowników końcowych do przeglądania hurtowni danych: OLAP i eksploracji danych. W częśći praktycznej zostanie omówiony proces wdrażania hurtowni danych, technologii BI w przedsiębiorstwie. Zostanie przedstawione przykładowe wdrożenie środowiska BI na przykładowej hurtowni danych przy użyciu narzędzi Pentaho. Na potrzeby niniejszego projektu została zaprojektowana i utworzona operacyjna baza danych w Microsoft Access. Zaprojektowano oraz wdrożono hurtownię danych na serwerze PostgreSQL. Rozwiązano kwestię integracji danych, zasilania hurtowni danych i harmonogramowania wykonywania zasileń za pomocą aplikacji Pentaho Data Integration stanowiącego implementację narzędzia ELT (Extraction Tranformation Loading). Wykonano niezbędne prace konfiguracyjne aplikacji Pentaho oraz serwera JBoss wymagane do tworzenia analiz danych zawartych w hurtowni oraz raportów. Wprowadzono przykładowe, fikcyjne dane do hurtowni, zrealizowano analizę wielowymiarową i wykonano raport na tychże danych. Spis treści I Analiza teoretyczna . . 3 4 4 5 1 Business Intelligence 1.1 Informacje ogólne . . . . . . . . . . . . . . . . . . . . . . . . 1.1.1 Architektura systemu hurtowni danych . . . . . . . . 1.1.2 Kwestia ładowania zgromadzonych danych do centralnej hurtowni danych . . . . . . . . . . . . . . . . . . 1.1.3 Techniczna implementacja systemu BI: . . . . . . . . 1.2 Business Intelligence 2.0 . . . . . . . . . . . . . . . . . . . . 2 Hurtownie danych 2.1 Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 SZBD w hurtowni danych . . . . . . . . . . . . . . . 2.1.2 Składnice danych . . . . . . . . . . . . . . . . . . . . 2.1.3 Problemy związane z tworzeniem i zarządzaniem hurtownią danych . . . . . . . . . . . . . . . . . . . . . . 2.2 Projektowanie hurtowni danych . . . . . . . . . . . . . . . . 2.3 OLTP vs. OLAP . . . . . . . . . . . . . . . . . . . . . . . . . 7 . 10 . 10 12 . 12 . 16 . 17 . 18 . 19 . 21 27 27 30 31 32 32 34 37 39 41 3 Proces ETL - zasilanie hurtowni danych 3.1 Informacje ogólne . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Narzędzia ETL . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Porównanie dostępnych narzędzi . . . . . . . . . . . . . . . . . 4 Technologie i narzędzia dostępowe 4.1 Technologia i OLAP . . . . . . . . . . . . . . . . . . 4.1.1 Model OLAP . . . . . . . . . . . . . . . . . . 4.1.2 Reprezentacje wielowymiarowej kostki danych 4.1.3 Narzędzia OLAP . . . . . . . . . . . . . . . . 4.2 Eksploracja danych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 SPIS TREŚCI 5 Istniejące rozwiązania Business 5.1 Microsoft SQL Server 2005 . . 5.2 Sybase . . . . . . . . . . . . . 5.3 SAS System . . . . . . . . . . 5.4 IBM . . . . . . . . . . . . . . 5.5 Bizgres . . . . . . . . . . . . . 5.6 Oracle . . . . . . . . . . . . . 5.7 SpagoBI . . . . . . . . . . . . 5.8 Pentaho Open BI Suite . . . . Intelligence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 48 50 52 53 54 55 57 58 60 67 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Korzyści z wdrażania technologii Business Intelligence II Implemetacja praktyczna 69 7 Przygotowania do wdrożenia 70 7.1 Baza operacyjna i hurtownia danych . . . . . . . . . . . . . . 70 8 Wdrożenie platformy Pentaho BI 8.1 Instalacja Pentaho BI . . . . . . . . . . . . . . . . . . . . . . 8.2 Spoon - Pentaho Data Integration (Kettle) . . . . . . . . . . 8.2.1 Transformations . . . . . . . . . . . . . . . . . . . . . 8.2.2 Jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.3 Tworzenie analiz - Mondrian Schema Workbench . . . . . . 8.3.1 Tworzenie prostego schematu . . . . . . . . . . . . . 8.3.2 Publikowanie Analysis Schema na platformie Pentaho BI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.4 Konfiguracja źródeł danych JNDI . . . . . . . . . . . . . . . 8.4.1 Instalacja sterownika bazy danych . . . . . . . . . . . 8.4.2 Konfiguracja JNDI . . . . . . . . . . . . . . . . . . . 8.5 Tworzenie nowego widoku analiz (Analysis View) . . . . . . 8.6 Tworzenie raportów - Pentaho Report Design Wizard . . . . 72 72 74 74 82 82 84 86 86 87 87 88 89 . . . . . . . . . . . . Część I Analiza teoretyczna 3 Rozdział 1 Business Intelligence Rozdział zawiera informacje ogólne dotyczące Business Intelligence. Pokrótce omówiono zagadnienie Business Intelligence 2.0. 1.1 Informacje ogólne „Business Intelligence jest pojęciem bardzo szerokim. Najbardziej ogólnie można przedstawić je jako proces przekształcania danych w informacje, a informacji w wiedzę, która może być wykorzystana do zwiększenia konkurencyjności przedsiębiorstwa.” 1 Business Intelligence jest względnie młodą technologią informatyczną; pojawila się praktycznie kilka lat temu. W chwili obecnej nie istnieje dobre tłumaczenie powyższego terminu na język polski, dlatego w nauce i w przemyśle funkcjonuje angielsko brzmiący termin Business Intelligence. Z uwagi na fakt, iż przedsiębiorstwa chcą walczyć w ramach działań konkurencyjnych, by uzyskiwać przewagę nad konkurentami, zarządzający nimi ludzie muszą posiadać wiedzę o rynku i zachowaniu klientów. Jednakże taka wiedza okazuje się niewystarczająca, gdyż zdobycie przewagi nad konkurentem posiadając tylko powyższa wiedzę jest bardzo trudne. Należy zatem wiedzę menadżerską rozszerzać w oparciu o obserwacje zachowania sie rynku lokalnego i o obserwacje dokonań, sukcesów oraz porażek własnej firmy. Wnioskując z historii jej działalności uczyć się na błędach popełnianych w przeszłości przez menadżerów. Zatem ujmując ogólnie powyższe stwierdzenia można wyciągnąć wniosek, iż technologia BI pomaga wzbogacać wiedzę menadżerską. 1 Cytat z: http:\\pl.wikipedia.org\wiki\Business intelligence 4 ROZDZIAŁ 1. BUSINESS INTELLIGENCE 5 Business Intelligence jest to technologia służąca wspomaganiu manedżerów, decydentów w podejmowaniu decyzji biznesowych, która ma opierać sie na historii działania przedsiębiorstwa. Technolgia BI stawia sobie za cel przekształcanie danych zgromadzoych w ramach przeszłej działalnośći firmy w informacje, a informacje w wiedzę o charakterze menadżerskim. Odbiorcami technlogii BI są menadżerowie, pracownicy szczebla kierowniczego, osoby decydująće o planach, strategiach, promocjach firm. BI stwarza bardzo drastyczne wymagania wydajnościowe dla sprzętu i oprogramowania ze względu na konieczność przetwarzania danych ogromnych rozmiarów. Stosownane są proste zapytania operujące na danych mierzonych w setkach terabajtów. Wdrożenie BI jest wyzwaniem o charakterze implementacyjno-administracyjo-wydajnościowym. Rozwiązania Business Intelligence powoli stają się nieodzownym elementem środowiska informatycznego wielu firm; mają umożliwiac konstruowanie wiedzy o charakterze manedżerskim, ktora powstaje w wyniku obserwacji przeszłej działalności przedsiebiorstwa. Centralnym punktem BI jest hurtownia danych. Technologia BI jest skupiona wokół zagadnień hurtowni danych. Aplikacje BI (graficznie reprezentujące dane na przykład w postaci tabel, wykresów) ułatwiają śledzenie historii działania przedsiębiorstwa i wywodzenie na jej podstawie pewnych reguł wspomagających zarządzanie przedsiębiorstwem, formulowanie hipotez i ich weryfikowanie, rozpoznawanie trendów sprzedazy itp. Aplikacje pojawiające sie w środowiskach BI dostarczają raportów biznesowych informujących, na przyklad o sumach zysków w różnych okresach caasowych, w różnych kategoriach, podkategoriach produktów w oparcu o dane gromadzone przez przędsiębiorstwo w różnych lokalizacjach na świecie za pomocą różnych lokalnych systemów informatycznych, w których dane reprezentowane są w różnych sposób, w różych formatach. Technologią BI najbardziej zainteresowane są przedsiębiorstwa globalne, w których nie istnieje pojedyncza baza danych przechowująca informacje o pełnej sprzedazy lub usługach realizowanych w filiach, sklepach w rozległych częściach świata zwykle tego typu informacje gromadzone są wielu bazach danych i rozproszonych systemach informatycznych. 1.1.1 Architektura systemu hurtowni danych Kluczowy składnik BI stanowi korporacyjna hurtownia danych (Enterprise Data Warehouse) - rodzaj systemu bazy danych, w którym groma- ROZDZIAŁ 1. BUSINESS INTELLIGENCE 6 Rysunek 1.1: Architektura systemu hurtowni danych. Źródło ilustracji: http:\\ www.datawarehouse4u.info\images\data warehouse architecture.jpg dzone są wszystkie informacje potrzebne pracownikowi szczebla kierowniczego do generownaia raportów biznesowych. Rola korporacyjnej hurtowni danych kształtuje się następująco: dane pochodzące z systemów źródłowych (operacyjne bazy danyh - bazy danych wykorzystywane w dzialalności operacyjnej w oddziałach przedsiębiorstwa; systemy starszej generacji wykorzystywane w działalności operacyjnej w rozproszonych oddziałach przedsiebiorstwa; pliki zewnętrzne produkowane przez aplikacje wykorzystywane w działalności operacyjnej wybranych oddziałów) są powielane do jednego miejsca - korporacyjnej hurtowni danych - można powiedzieć, że jest to baza danych, która jest repliką baz danych, zbiorów danych występujacych w lokalizacjach źródłowych; jest to replika w sensie powielania wybranych danych związanych z tymi elementami działalości biznesowych, które mają podlegać raportownaiu biznesowemu. Nie pobierane są infomacje dotyczące danych osobowych pracowników, o urlopach, katalogii produktów itp. tylko dane mające podlegać docelowo wykorzystywaniu przez decydenta użytkującego aplikacje raportowania biznesowego. Powielanie danych służy umieszczeniu ich w jednym miejscu. Należy gromadzić dane w perspekywie historycznej z punktu widzenia BI by nie tracic danych historycznych, gdyż dla decydenta mozliwość obserwacji trendów w szerokiej perspektywie jest bardzo cenna. ROZDZIAŁ 1. BUSINESS INTELLIGENCE 7 Realizacja środowisk BI zwykle oznacza konieczność skonstruowania systemu bazy danych nazywanego korporacyjną hurtownia danych. System ten podlega na projektowniu prowadzonym na podobnych zasadach jak klasycznych systemow baz danych, aczkolwiek zaproponowano szereg wzorcow projektowych, które ułatwiają podejście analityka, projektanta do tego problemu. 1.1.2 Kwestia ładowania zgromadzonych danych do centralnej hurtowni danych Wizualizacja danych nie jest problematyczna. Prawdziwym wyzwaniem stawianym przed BI jest zintegrowanie, przetworzenie, zgrupowanie danych pozyskanych z różnych źródłowych systemów. Wiele firm globalnych, poprzez budowanie fuzji z innymi firmami posiada systemy informatyczne heterogenicze tzn. wykorzystujące różne systemy komputerowe pochodzące od różnych dostawców, tworzone w odmiennych technologach w innych czasie. Dane często są także rozproszone geograficznie. Dane muszą być przenoszone z sytemów działalności operacyjnej do środowiska hurtowni danych, centralnej bazy danych. Dane gromadzone w systemach źrółowych są pokaźnych rozmiarów, zatem ich przesłanie sieciami komputerowymi do centralnej hurtowni danych może stanowić wyzwanie natury organizacyjnej, infrastrukturalnej. Z uwagi na fakt, iż dane mogą mieć inna strukturę niezbędna może okazać się konwersja struktur danych, ażeby dopasować je do siebie także w przypadku braku danych lub przekłamań. Kiedy dane zostaną zgromadzone w centralnej hurtowni mogą z nich korzystać aplikacje analityczne, zwykle graficzne - dają możliwość analizowania zawartości hurtowni danych, operują bezposrednio na hurtowni na strukturach, które w niej się znajdują i wizualizuja jej zawartość w sposób w sposob interakcyjny mozliwosc wnikania w sprzedaz w skali roku, kwartalu, miesiaca w kategorie produktów, podkategorie itp. Kwestia ładowania, zasilania hurtowni danymi z systemow operacyjnych zwykle powoduje wzmożone obciążenie tych systemów dlatego unika sie wykonywania tego typu operacji podczas normalnego dnia pracy; dane pobierane są kiedy użytkownicy tych systemów są nieaktywni w związku z czym pobieranie danych następuje periodycznie np. w okresach nocnych, raz w tygodniu podczas weekendu, raz w miesiacu podczas przerwy technicznej. Praca decydenta korzystajacego z aplikacji analitycznych odbywa się w dowolnym momencie, w godzinach pracy decydenta i polega na korzystaniu ROZDZIAŁ 1. BUSINESS INTELLIGENCE 8 Rysunek 1.2: Architektura koncepcyjna BI. http:\\ articles.techrepublic.com. z aplikacji anlitycznej powodując wzmożone obciążenie systemu korporacyjnej hurtowni danych. Dlatego też środowisko korporacyjnej hurtowni danych funkcjonowało na odrębnym, dedykowanym sprzecie. W praktyce często stosowane są modele bardziej złozone - jednym z nich jest model środowiska BI z obszarem skladowania. Różnica pomiędzy tymi dwiema architekturami polega m.in. pojawieniu się dodatkowego komponentu - wyznaczonego fragmentu pamięci masowej, który służy do tymczasowego przechowywania danych pobieranych z systemów źródłowych. Dane pochodzace z systemow źródłowych są najpierw umieszczane w tymczasowym obszarze składowania - dysku, bazie danych - następnie z tego miejsca przekazywane do korporacyjnej hurtowni danych. Dane są czytane, trasformowane do postaci docelowej i dopiero wtedy zapisywane w hurtowni danych. Tego typu rozudowa ma służyć przyspieszeniu ekstrahowania danych z systemów źródłowych. Zasilanie hurtowni danych jest procesem złożonym (obliczeniowo) z punktu widzenia kosztu przetwarzania, co oznacza ze może ROZDZIAŁ 1. BUSINESS INTELLIGENCE 9 się okazać iż czas zasilania hurtowni danych jest na tyle długi, że nie możliwe jest załadowanie danych np. w ciągu jednej nocy i zakończenie tego procesu przed rozpoczęciem dnia pracy użytkowników baz operacyjnych. W czasie następnego dnia pracy dane przenoszone są z tego z obszaru składowania do korporacyjnej hurtowani danych nie zakłócająac pracy systemów źródłowych. Istnieje także model środowiska BI ze składnicami danych zwanych oddziałowymi składnicami danych. Klasyczna korporacyjna hurtowania danych gromadzi informacje na temat najważniejszych nurtów działalnosci przedsiębiorstwa. Użytkownicy szczebla kierowniczego zwykle nie sa zainteresowani jednocześnie wszystkimi nurtami działalności, ale użytkownicy podzieleni są jeśli chodzi o zakres ich zinteresowań i wykorzystania zawartości hurtowni danych. Problemy wydajnościowe pojawiają się jeśli wielu użytkowników operuje na tej samej hurtowni danych, wpływa na pogorszenie komfortu ich pracy. Rozwiazaniem kwestii wydajnościowych jest replikacja zawartości korporacyjnej hurtowni danych do mniejszych hurtowni danych - składnic danych (data marts). Oddziałowa składnica danych to mini hurtownia danych, gromadząca wycinek zawarości korporacyjnej hurtowni danych, którym zainteresowany jest decydent. Rysunek 1.3: System BI ze składnicami danych (data marts). ROZDZIAŁ 1. BUSINESS INTELLIGENCE 10 1.1.3 Techniczna implementacja systemu BI: Etapy technicznej implementacji systemu BI: • analiza wymagań Na tym etapie określane są cele jakie klienci, użytkownicy chcą osiągac, co chca analizowac, jakie cele biznesowe beda realizone za pomoca technologii Business Intelligence. Dokonywany jest wybór obszarów wiedzy dla których będa gromadzone dane w hurtowni danych • projekt logiczny hurtowni danych Projektowana jest kostka, okreslane są osie ukladu współrzednych stanowiące wymiary, fakty i miary; projektowane są wielowymiarowe struktury logiczne. • implementacja struktur fizycznych hurtowni danych Projektowana jest struktura fizyczna bazy danych np. relacje, zaprojektowana kostka staje sie zbiorem relacji w bazie relacyjnej. • implementacja oprogramowania ETL • realizacja aplikacji analitycznych Implemetuje się aplikacje analityczne, tworzy programy komputerowe wyposażone w bogaty GUI, za pomoca którego odbiorca, użytkownik, analityk będzie prowadzil raportowanie biznesowe. • strojenie hurtowni danych Konfigurowany jest system, aby jego wydajnośc była zadowalajaca; procedury te nazywane są procedurami strojenia wydajnosci; następuje m.in. dobór parametrow konfiguracyjnych, struktur przechowywania danych, indeksowanie danych itp. [ZPWI07] 1.2 Business Intelligence 2.0 Rozwiązania BI są bardzo popularne, przynajmniej w niektórych rejonach świata i sama technologia jest na znacznym etapie rozwoju. Stosuje się Business Intelligence 2.0. Zaletą i najważniejszą cechą BI 2.0 jest, iż wszystkie raporty pokazują sytuację w czasie rzeczywistym (real-time), a nie z opóźnieniem jak w przypadku BI 1.0, kiedy to raporty oraz analizy dostępne są dopiero po jakimś czasie, potrzebnym na odpowiednie przetworzenie danych w hurtowniach. ROZDZIAŁ 1. BUSINESS INTELLIGENCE 11 BI 2.0 oparte jest na zdarzeniach (event-driven), dzięki czemu można szybko i precyzyjnie reagować na wydarzenia zachodzące w biznesie, w szczególności wcześnie wykrywać sytuacje krytyczne (tzw. Early Warning System) i zapobiegać ich negatywnym następstwom. BI 2.0 automatyzuje część analizy występujących zdarzeń, dzięki czemu w praktyce można zrzucić odpowiedzialność za interpretację prostych danych na system. Przykładem może być porównanie wartości otrzymanych podczas wystąpienia konkretnego zdarzenia do tych oczekiwanych na podstawie historii. Jeżeli chodzi o stronę techniczną, to najczęściej BI 2.0 oparte jest o SOA (Service Oriented Architecture), co pozwala na łatwe łączenie systemu z aplikacjami zewnętrznymi. Rozdział 2 Hurtownie danych Niniejszy rozdział zawiera wprowadzenie do tematyki hurtowni danych, porusza zagadnienia projektowania oraz aspekty techniczne wdrożenia hurtowni danych. Dokonano porównania systemów OLTP i OLAP. 2.1 Wprowadzenie Hurtownia danych stanowi kluczowy element środowisk Business Intelligence. Jedna z pierwszych definicji hurtowni danych pojawiła sie w pracy naukowej Williama H. Inmonna zwanego ”ojcem hurtowni danych” w roku 1996. W najbardziej zwięzłej postaci brzmi następująco: Hurtownia danych to tematyczna baza danych, która trwale przechowuje zintegrowane dane opisane wymiarem czasu. Wyjaśnienie i rozwinięcie pojęć w definicji: • tematyczna - dane dotyczą głównych obszarów działalności przedsiębiorstwa; zwiazana z wybranymi zagadnieniami hurtownia danych nie gromadzi wszystkich informacji o działalnosci przedsiębiorstwa jest „z góry” określone, które tematy działalości firmy będą podlegać analizie biznesowej i dla których nalezy przygotować w hurtowni danych odpowiedni zbiór danych w postaci danych historycznych; • trwale przechowuje - dane nie są zmieniane ani usuwane; hurtownia ma charakter przyrostowy; oznacza, że hurtownie danych nigdy nie pozbywaja sie danych, nieprzerwalnie „rosną”. W przypadku doskonałym gromadzą 100% historii działalności przedsiębiorstwa w tematycznie 12 ROZDZIAŁ 2. HURTOWNIE DANYCH 13 wybranych obszarach w hurtowni danych; hurtownie danych przeprowadzają wyłącznie operacje wprowadzania i odczytu danych nie realizując operacji usuwania i modyfikowania; • zintegrowane dane - dane dotyczące tego samego podmiotu stanowią całość; fakty wygenerowane w dwóch systemach (różnych oddziałach firmy) to fakty wygenerowane przez tę samą jednostkę, ten sam byt; dane pochodzące z wielu heterogenicznych źrodeł muszą zostać połaczone; • opisane wymiarem czasu - dane opisują zdarzenia historyczne, a nie tylko stan aktualny. Niezwykle ważne jest, aby każda informacja była oznakowana czasowo tzn. kazdy fakt np. sprzedaży miał związany z nim znacznik czasowy - datę zaistnienia faktu; hurownie wykorzystywane są do obserwacji tredów w wymiarze czasu; często danych czasowych brakuje z systemach źródłowych i uzupełnia się je podczas procesu zasilania hurtowni o punkty czasowego wystapienia zjawisk. Relacyjne systemy zarządzania bazą danych zostały zaprojektowane do wydajnej obsługi dużej liczby transakcji przy założeniu, że pojedyncze transakcje dokonują na ogół niewielkich zmian w danych operacyjnych organizacji - w danych, których organizacja używa do wykonywania codziennych zadań. Natomiast hurtownie danych powstały w celu sprawniejszej realizacji analiz działalności organizacji, występujących trendów i danych; dostarczają przede wszystkim narzędzi do zarządzania magazynem danych. Hurtownia danych może być wykorzystywana jako główny element systemu wspomagającego zarządzanie firmą. Pozwala ona systematyzować i gromadzić informacje w jednym miejscu, dzięki czemu z danych można wydobyć szczególny rodzaj informacji określany mianem wiedzy i dokonywać analizy. Hurtownia danych używa przetwarzania OLAP do przedstawienia użytkownikom danych w postaci wielowymiarowych widoków, które mogą być dla trzech wymiarów wizualnie reprezentowane w postaci kostki. Ostatecznym zadaniem hurtowni danych jest integracja danych korporacyjnych z całego przedsiębiorstwa w pojedynczym repozytorium, do którego użytkownicy mogą łatwo zadawać pytania, tworzyć raporty i wykonywać analizy. Podsumowując - do zadań hurtowni danych należy zarządzanie danymi i ich analiza. Hurtownie danych WWW - rozproszone hurtownie danych, które zaimplementowane są w sieci WWW bez centralnego repozytorium danych. Stosowane w celu gromadzenia w analizy danych pochodzących ze strumieni ROZDZIAŁ 2. HURTOWNIE DANYCH 14 kliknięć (ang. clickstream), czyli danych behawioralnie generowanych w wyniku interakcji użytkowników przy pomocy przeglądarek WWW z serwisami WWW. Głównymi składnikami hurtowni danych są: źródła danych operacyjnych, operacyjny magazyn danych, zarządca wprowadzania danych, zarządca hurtowni, zarządca zapytań, szczegółowe oraz lekko i mocno skumulowane dane, dane archiwalne i kopie zapasowe, matadane oraz narzędzia dostępowe dla użytkowników. Dane operacyjne to dane dostarczane do hurtowni; źródłami danych operacyjnych mogą być: - Dane operacyjne komputera centralnego przechowywane w bazach danych pierwszej generacji, - Dane wydziałowe przechowywane w firmowych systemach plików, - Dane prywatne, - Zewnętrzne systemy, - Bazy danych komercyjne lub powiązane z dostawcami, klientami organizacji. Operacyjny magazyn danych (ODS, ang. operational datastore) - to miejsce przechowywania bieżących i zintegrowanych danych operacyjnych używanych do analizy; ma często podobną strukturę i przejmuje dane w sposób analogiczny do hurtowni danych; może być etapem pośrednim przy przenoszeniu danych do hurtowni. Zarządca wprowadzania danych - wykonuje wszystkie operacje związane z pobieraniem danych i ich wprowadzaniem do hurtowni oraz proste transformacje danych przystosowujące dane do wprowadzenia do hurtowni. Zarządca hurtowni - wykonuje wszystkie operacje związane z zarządzaniem danymi w hurtowni; jest konstruowany przy użyciu komercyjnych narzędzi i odpowiednich programów. Zarządca zapytań - wykonuje wszystkie operacje związane z zarządzaniem zapytaniami użytkowników m.in. kierowanie zapytań do tabel, szeregowanie wykonań zapytań. Szczegółowe dane - fragment hurtowni zapisujący szczegółowe dane w schemacie bazy danych, zwykle nieprzechowywane bezpośrednio, lecz udostępniane przez agregacje danych na następnym poziomie szczegółowości. Zagregowane dane są uzupełniane nowymi danymi szczegółowymi w regularnych odstępach czasu. Lekko i mocno skumulowane dane - fragment hurtowni danych, zapisujący wszystkie predefiniowane, lekko i mocno skumulowane (zagregowane) dane generowane przez zarządcę hurtowni. Ten fragment hurtowni ma nietrwały charakter, ponieważ jest ciągle modyfikowany, co wynika ze zmieniających się profili zapytań. Dane skumulowane są generowane na podstawie ROZDZIAŁ 2. HURTOWNIE DANYCH 15 danych szczegółowych.Celem kumulacji danych jest przyspieszenie wykonywania zapytań. Skumulowane dane są aktualizowane w sposób ciągły, gdy tylko nowe dane wprowadzone zostaną do hurtowni. Dane archiwalne i kopie zapasowe - fragment hurtowni zapisujący szczegółowe i skumulowane dane do archiwum i kopii zapasowych. Metadane - fragment hurtowni danych przechowujący wszystkie definicje metadanych używanych przez wszystkie procesy w hurtowni. Struktura metadanych jest różna dla każdego procesu. Metadane są wykorzystywane do odwzorowania źródeł danych na wspólny model danych przyjęty w hurtowni, do automatyzacji czynności tworzenia tabel skumulowanych oraz przy kierowaniu zapytań do najbardziej odpowiedniego źródła danych. Narzędzia dostępowe dla użytkowników korzystają z metadanych w celu objaśnienia sposobu konstruowania zapytania. Zarządzanie metadanymi, które są używane do różnych celów to wyjątkowo trudne i bardzo złożone zadanie i stanowi zasadniczą kwestię przy pełnej integracji hurtowni danych. Jednym z głównych zagadnień integracji danych jest opracowanie metod synchronizacji różnego rodzaju metadanych w ramach hurtowni. Różne narzędzia hurtowni danych generują i wykorzystują własne metadane jednakże zgodnie z wymogiem pełnej integracji powinny one wspólnie wykorzystywać metadane. Wynika stąd, że niezbędna jest synchronizacją metadanych pomiędzy produktami pochodzącymi od różnych producentów i używającymi odmiennych systemów pamiętania metadanych. Faktem jest, iż nie da się uniknąć integracji metadanych. Istnieje standard pozwalający na swobodną wymianę metadanych - CWM (Common Warehouse Model) budowany na bazie standardów UML, XMI, MOF, OIM. Podstawowym zadaniem hurtowni danych jest zarządzanie pięcioma głównymi przepływami danych: • Dopływem - pobieranie, czyszczenie i wprowadzanie danych. • Wznoszeniem się - zwiększanie wartości danych poprzez kumulacją, pakowanie i dystrybucję. • Odpływem - archiwizacja i sporządzanie kopii zapasowych. • Wpływem - udostępnianie danych użytkownikom. • Meta-przepływem, przepływem metadanych - zarządzanie metadanymi. ROZDZIAŁ 2. HURTOWNIE DANYCH 16 Narzędzia i technologie hurtowni danych związane z budowaniem i zarządzaniem hurtownią danych. Narzędzia do pobierania, czyszczenia i przekształcania danych: - Generatory kodu - Narzędzia replikacji danych w bazach danych - Dynamiczne mechanizmy przekształcające 2.1.1 SZBD w hurtowni danych Wymagania względem SZBD decydujące o ich przydatności dla hurtowni danych: a. Wydajność wprowadzania danych b. Przetwarzanie wprowadzanych danych c. Zarządzanie jakością danych d. Wydajność zapytań e. Terabajtowa skalowalność f. Skalowalność ze względu na liczbę użytkowników g. Sieciowe hurtownie danych h. Administracja hurtownią danych i. Zintegrowane wielowymiarowe analizy j. Zaawansowane funkcje zapytań Równoległe SZBD Ważną kwestia podczas integracji związaną z potencjalną wielkością danych w hurtowni jest równoległość obliczeń - równie istotna jak wydajność, skalowalność, dostępność i łatwość zarządzania. Technologia równoległych baz danych zapewnia konieczną wydajność podczas przetwarzania ogromnych ilości danych przez hurtownie. Sukces równoległych SZBD zależy od efektywnego działania wielu zasobów w tym procesorów, pamięć, dysków i połączeń sieciowych. Głównymi właściwościami równoległych SZBD są skalowalność, operatywność, dostępność. Jako platformy serwerów baz danych dla hurtowni danych używane są dwa główne rodzaje równoległych architektur sprzętowych: • Symetryczne przetwarzanie wieloprocesorowe - zbiór ściśle powiązanych procesorów, które mają wspólną pamięć i przestrzeń dyskową • Przetwarzanie masywnie równoległe - zbiór luźno powiązanych procesorów, z których każdy ma własną pamięć i przestrzeń dyskową Wszystkie wymienione zagadnienia powinny być brane pod uwagę przy wyborze SZBD. ROZDZIAŁ 2. HURTOWNIE DANYCH 17 2.1.2 Składnice danych Składnica danych - przechowuje podzbiór danych zawartych w hurtowni danych, który realizuje wymagania konkretnego wydziału lub działania biznesowego, koncentruje się wyłącznie na wymaganiach użytkowników związanych z jednym wydziałem lub działaniem biznesowym; może działać samodzielnie lub być podłączona centralnie do korporacyjnej hurtowni danych. Składnice danych stały się popularne, ponieważ rozległe korporacyjne hurtownie danych okazały się trudne w tworzeniu i używaniu, ze względu na mniejszą liczbę przechowywanych danych w porównaniu do hurtowni danych są łatwiejsze w obsłudze i zrozumieniu. Składnice danych zazwyczaj nie zawierają szczegółowych danych operacyjnych. Zagadnienia związane z tworzeniem i zarządzaniem składnicami danych: • Wzrastający zakres funkcji realizowanych przez składnice danych wraz ze wzrostem ich popularności. Niektóre składnice muszą być skalowane do setek gigabajtów i realizować złożone analizy za pomocą narzędzi OLAP i eksploracji danych oraz obsługiwać setki zdalnych użytkowników oczekujących szybszych czasów reakcji niż w hurtowniach danych. W związku z powyższymi składnice danych są porównywalne pod względem złożoności i rozmiaru z niewielkimi korporacyjnymi hurtowniami danych. Jednak wydajność pogarsza się wraz ze wzrostem wielkości składnicy. Przykładem sposobu zmniejszenia rozmiaru stosowanego przez producentów może być dynamiczna wielowymiarowość pozwalająca na obliczanie agregacji na życzenie zamiast wstępnego wyliczania i zapamiętywania w kostkach wielowymiarowych baz danych. Poza czasem reakcji na żądania użytkowników musi zostać rozpatrzony drugi składnik (równie) krytyczny, mianowicie • wydajność wprowadzania danych . Producenci badają możliwość usprawnienia procedury wprowadzania danych przez zastosowanie indeksów, które automatycznie dopasowują się do przetwarzanych danych. Inną metodą jest modyfikacja tylko komórek, których dotyczy dana aktualizacją zamiast modyfikacji całej struktury MDDB (ang. multi-dimentional database) podczas przyrostowej aktualizacji bazy danych. ROZDZIAŁ 2. HURTOWNIE DANYCH 18 Wirtualne składnice danych to sposoby widzenia wielu fizycznych składnic danych lub korporacyjnych hurtowni danych dopasowane do wymagań specyficznej grupy użytkowników; ich budowa jest jednym z rozwiązań dostępu użytkowników do danych z wielu składnic poza replikacją danych pomiędzy składnicami; do tworzenia wirtualnych składnic są dostępne odpowiednie produkty. • Potrzeba centralnego zarządzania, koordynacji i administracji składnicami danych pojawia się wraz ze wzrostem ich liczby w organizacji. Na rynku dostępne są narzędzia do administrowania składnicami danych. W efekcie pojawiły się takie zagadnienia jak: praca z różnymi wersjami składnic, spójność danych i meta danych, integralność, bezpieczeństwo całego przedsiębiorstwa i dostrajanie wydajności. Producenci za względu rosnącą złożoność stworzenia składnicy danych oferują produkty nazywane ”składnicami danych w pudełku” stanowiące tanie źródło narzędzi dla składnic danych. 2.1.3 Problemy związane z tworzeniem i zarządzaniem hurtownią danych • Niedoszacowanie czasu potrzebnego do wprowadzenie danych • Ukryte problemy z systemami źródłowymi zasilającymi hurtownię danych; mogą zostać wykryte po wielu latach niezauważalnego ich występowania • Brakujące dane w systemach źródłowych • Rosnące wymagani użytkowników; • Wzrost liczby użytkowników zapytań i złożoności tych zapytań • Trudności z ujednoliceniem danych; rozwiązanie problemu ujednolicenia może prowadzić do obniżenia wartości tych danych • Wysokie zapotrzebowanie na zasoby, na przestrzeń dyskową, implementacje oparte o schematy płatka śniegu, płatka gwiaździstego lub gwiazdy powodują powstawanie bardzo dużych tabel faktów; jeśli dane rzeczowe mają wiele wymiarów to powstałe z polaczenia tabel agregujących i indeksów tabel faktów mogą zajmować więcej przestrzeni niż dane pierwotne ROZDZIAŁ 2. HURTOWNIE DANYCH • Własność danych • Złożona pielęgnacja systemu 19 • Długoterminowość projektów wdrożeń hurtowni danych - do trzech lat. Z tego powodu niektóre organizacje tworzą składnice danych, które mogą powstawać szybciej • Złożoność integracji różnych narzędzi magazynowania danych 2.2 Projektowanie hurtowni danych Hurtownie danych są tworzone do współpracy z oprogramowaniem wspomagającym zarządzanie przedsiębiorstwem i podejmowanie decyzji biznesowych. Są one elementem pośredniczącym między systemami transakcyjnymi a zaawansowanymi narzędziami analitycznymi. Główną motywacją konstruowania hurtowni danych jest lepsze wykorzystanie systemów wspomagania decyzji DSS (Decision Support Systems), systemów informacyjnych MIS (Management Information Systems) oraz EIS (Executive Information Systems). W latach osiemdziesiątych zaczęto tworzyć techniki projektowania hurtowni danych. Modelowanie wielowymiarowe to technika projektowania, której celem jest prezentacja danych w formie pozwalającej na wysoce wydajny dostęp. Techniki projektowania wielowymiarowego stały się dominującą metodą projektowania baz danych dla hurtowni. Schemat gwiazdy (złączenie gwiaździste) - struktura logiczna; w centrum znajduje się tabela faktów zawierająca dane rzeczowe; otoczona jest przez tabele wymiarów z danymi referencyjnymi (mogą być zdenormalizowane); tabele faktów mogą być wyjątkowo duże w stosunku do tabel wymiarów; Tabele wymiarów zawierająca opisowe informacje tekstowe. Atrybuty wymiarowe są używane w warunkach ograniczających zapytania do hurtowni danych. Schemat gwiazdy korzysta z cech danych rzeczowych: 1) wszystkie fakty zostały wygenerowane przez przeszłe zdarzenia; 2) fakty nie ulegną zmianie bez względu na sposób ich analizy; Najbardziej użyteczne są fakty numeryczne i addytywne, ponieważ aplikacje hurtowni danych zazwyczaj korzystają jednorazowo z setek, tysięcy lub milionów rekordów, a najbardziej użyteczną operacją, jaką można wykonać na tak dużej liczbie rekordów jest agregacja. ROZDZIAŁ 2. HURTOWNIE DANYCH 20 Rysunek 2.1: Porównanie modeli gwiazdy i płatka śniegu. Źródło: Cezary Głowiński: Sztuka wysokiego składowania 2000 Schemat płatka śniegu - odmiana schematu gwiazdy; tabele wymiarów nie zawierają zdenormalizowanych danych. Schemat płatkowo-gwiaździsty (konstelacji) - struktura hybrydowa będąca połączeniem schematów gwiazdy i płatka śniegu. Model ER bywa zazwyczaj rozkładany na wiele modeli DM. Powstałe modele DM są łączone za pomocą zgodnych tabel wymiarów. Istnieją alternatywne techniki tworzenia hurtowni danych. Jednym z najbardziej udanych rozwiązań jest rozłożenie projektu hurtowni na łatwiejsze w zarządzaniu części - składnice danych. Integracja składnic danych prowadzi do powstania hurtowni obejmującej całe przedsiębiorstwo. Etapy projektowania hurtowni lub składnicy danych określane są przez metodę dziewięciu kroków. Kolejne kroki wspomnianej metody: 1. Wybór procesu 2. Wybór poziomu szczegółowości 3. Identyfikacja i uzgodnienie wymiarów 4. Wybór faktów 5. Umieszczenie wstępnych obliczeń w tabeli faktów 6. Zaokrąglanie tabel wymiarów 7. Wybór zakresu czasowego bazy danych 8. Śledzenie wolno zmieniających się wymiarów 9. Określenie priorytetów zapytań i trybów zapytań ROZDZIAŁ 2. HURTOWNIE DANYCH 21 Rysunek 2.2: Schemat gwiazdy Rysunek 2.3: Schemat płatka śniegu Kryteria oceny systemu dotyczące stopnia realizacji wielowymiarowego sposobu widzenia hurtowni danych podzielone zostały na trzy grupy: - architektura, - administracja, - zdolność wyrażania. 2.3 OLTP vs. OLAP Porównanie systemów klasycznych z systemami hurtowni danych ROZDZIAŁ 2. HURTOWNIE DANYCH 22 Rysunek 2.4: Schemat płatkowo gwiaździsty (konstelacji) Rysunek 2.5: Schemat gwiazdy OLTP – On-Line Transaction Processing (przetwarzanie transakcyjne) OLAP – On-Line Analytical Processing (przetwarzanie analityczne) Systemy klasycznych baz danych OLTP to systemy przetwarzania transakcyjnego, operacyjnego np. systemy bankowosci detalicznej używane przez pracowników szeregowych do wspomagania ich podstawowej działalności. Systemy OLAP służą do prowadzenia analiz przez prezesów, decydentów, umożliwiają wyciąganie wniosków co do form zarzadzania w przyszłości. W systemach baz operacyjnych najważniejszą kwestią jest jak najszybsze wykonywanie transakcji, w hurtowniach danych nie ma znaczenia prędkość wykonywania operacji. Operacje w przypadku hurtowni danych dają dość długie czasy odpo- ROZDZIAŁ 2. HURTOWNIE DANYCH 23 Rysunek 2.6: Schemat płatka śniegu wiedzi. Raport biznesowy pokazujący roczny zysk przedsiębiorsta w rożnych obszarach, galeziach, kategoriach produktów może być generowany przez kilka godzin. Jednakze taka prace wykonywane są jednorazo w ciągu roku kiedy dokonuje się planowania biznesowego fimy na następny rok, ustalenia główne strategii funkjonowania firmy. Technologie, ktore obecnie posiadane powodują wielką konsumcję czasu i mocy obliczeniowej w związku z czym na potrzeby BI dokonuje się zakupu najdroższych rozwiazań sprzętowych, angażuje sie przetwarzanie rozproszone. Rozproszoną hurtownię danych tworzą połączone korporacyjne hurtownie danych. Intensywność operacji dyskowych w systemach OLTP dane są dobrze buforowane, powtarzalne, nie musza być odczytywane w dużych porcjach, w przypadku hurtowni wydajność dysków twardych często determinuje wydajność całego systemu. W klasycznych systemach dominują operacje DML (Data Manipulation Language). To operacje wprowadzania, modyfikowania i usuwania danych stąd wynika zorientowanie architektur i rozwiazań na efektywne wykonywanie przetwarzanie tego typ operacji, aby jak najszybciej wykonywać transakcje i operacje wprowadzania nowych danych. W przypadku hurtowni danych ten profil jest zupełnie inny - dominują operacje odczytu danych. Z punktu widzenia decydenta 100% operacji to odczyt danych. Oprócz odczytu na hurtowni wykonywane są operacje wprowadzania danych. Klasyczne bazy danych przechowują dziesiątki, setki gigabajtów informacji w przypadku typowych rozwiazań natomiast hurtownie - terabajty ROZDZIAŁ 2. HURTOWNIE DANYCH 24 Rysunek 2.7: Schemat płatkowo gwiaździsty (konstelacji) danych. Sytemy klasyczne krotkoterminowo przechowują dane, wyłączają przypadki regulowane względami prawnymi tj. przechowywania komunikacji mailowej lub dokumentów finansowych, pracowniczych przez kilka lat. Informacje przenoszone są na nośniki typu DVD i gromadzone w archiwach, nie dostępne bezposrednio użytkownikom. Dane są usuwane, aby nie spowalnialy działania bazy operacyjnej. W pzypadku hurtowni danych cała historia działalności przedsiębiorstwa np. 10 lat - ale tylko dlatego, że technologia hurtowni młoda i nie ma przedsiębiorstw, który zgromadziłyby dane z szerszego okresu czasu. Klasyczne bazy danych gromadzą dane potrzebne aplikacją. Hurtownie gromadzą wyłacznie dane tematyczne np. dane dotyczące sprzedaży produktów, reklamacji itp. Przedsięwzięcie związane z budową hurtowni danych obejmuje wiele aspektów. Jednym z nich jest wybór platformy sprzętowej dla hurtowni danych chodzi tu głównie o określenie mocy serwera. Następny to wybór platformy systemowej (Windows NT, różnego rodzaju Uniksy i systemy mainframe). Kolejny aspekt to wybór systemu zarządzania bazą danych (SZBD). Ostatni wreszcie aspekt dotyczy wyboru oprogramowania do budowy i zarządzania hurtownią danych. Jeśli firma decyduje się na jakiś SZBD, to wybiera również oprogramowanie do tworzenia hurtowni u tego samego producenta. Nie ROZDZIAŁ 2. HURTOWNIE DANYCH 25 Rysunek 2.8: OLTP vs. OLAP. Źródło exonous.typepad.com\mis\busines intelligence.jpg ilustracji: http:\\ jest to w żaden sposób obligatoryjne, gdyż zwykle dostępne są sterowniki do różnego rodzaju serwerów baz danych, niemniej jest to dość naturalny wybór. ROZDZIAŁ 2. HURTOWNIE DANYCH 26 Cecha System klasyczny Hurtownia danych czas odpowiedzi aplikacji ułamki sekundy - sekundy sekundy - godziny wykonywane operacje DML select czasowy zakres danych 30-60 dni 2-10 lat organizacja danych według aplikacji tematyczna rozmiar małe - duże duże - wielkie intensywność operacji dyskowych mała - średnia wielka Tabela 2.1: Porównanie systemów klasycznych z systemami hurtowni danych [ZPWI07] OLTP bieżace, aktywne dane, zwykle ciągle aktualizowane, ograniczona ilość danych historycznych OLAP aktywne przetwarzanie operacji zoptymmalizowane w modelu relacyjnym do efektywnej aktualizacji danych, wysoka wydajność przetwarzania transakcji zoptymmalizowane do odczytu, wyszukiwania danych, wydajność przetwarzania transakcji mieści się w zakresie od średniej do niskiej przetwarzania powtarzają się przetwarzania wykonywane są ad hoc, niestrukturalnie i heurytycznie dane dynamiczne dane statyczne dane szczegółowe dane szczegółowe, lekko i silnie skumulowane przewidywalny schemat użycia nieprzewidywalny schemat użycia sterowanie transakcjami sterowanie analizami zorientowane aplikacjnie zorientowane podmiotowo wspierają codzienne decyzje wspierają strategiczne decyzje służą dużej liczbie użytkowników biurowych i operacyjnych służą względnie małej liczbie użytkowników zarządzających dane archiwalne, historyczne, aktualizowane w ustalonym czasie np. co noc analiza zebranych danych Tabela 2.2: Porównanie systemów OLTP i OLAP Rozdział 3 Proces ETL - zasilanie hurtowni danych 3.1 Informacje ogólne Waznym elementem architektury każdego srodowiska BI jest oprogramowanie słuzace do zasilania hurtowni danych informacjami, danymi z systemów źródłowych. To oprogramowanie nazywane jest ETL (ang. Extraction, Transformation, Loading). Wyróżnić można 3 etapy pracy aplikacji ETL: ekstrakcja, transformacja, ładowanie. Extraction - ekstrakcja danych z systemow źródłowych, odczyt danych z operacyjnych baz danych, systemów starej generacji, plików zewnętrznych; polega na odczycie, pobraniu danych z systemu źródłowego - operacyjnego systemu źródłowego. Na przyład jeśli źródłem jest SQL’owa baza danych należy wydać zapytanie, plik tekstowy - dokonac analizy skladniowej tego pliku i pobrać jego zawartość. Ekstrakcja danych jest czesto niezwykle trudnych krokiem realizacyjnym w przypadkach kiedy programista musi wydobyć dane z systemu starej generacji napisanego w jezyku pogrmowania obecnie nie używanym. Często wymusza to niejako „włamywanie sie” do starego systemu stworzonego przez firmę, ktora byc moze juz przestała istniec i nie jest mozliwe zlecenie stworzenia interfejsu do tego systemu umożliwiajacego pobranie danych z tego systemu. Tranformation - konwersja, transformacja z postaci źródłowej do postaci, której oczekujemy w środowisku hurtowni danych; dostosownie danych źródłowych do postaci, w ktorej mają być przechowywane w hurtowni 27 ROZDZIAŁ 3. PROCES ETL - ZASILANIE HURTOWNI DANYCH 28 danych; łączenie, weryfikacja, walidacja, czyszczenie i znakowanie czasowe danych; transformacja oznacza np. konwersję wartości reprezentowanej jako tekst do numerycznego typu danych, układu zapisywanych dat, rodzielenie pola „imie nazwisko” na dwa oddzielenie pola „imie” i „nazwisko”. Podczas realizacji fazy transformacji może okazać sie, że system źródłowy nie gromadził w ogóle informacji, której przechowania w hurtowni danych oczekujemy. W takim przypadku degenerowuje sie brakujace informacje podczas fazy transformacji. Jest to faza kosumująca dużo czasu ze wzgledu na koniecznosc stosowania mechanizmów naprawiania danych, uzupełniania braków w danych. Poza brakami w danych innym zagrozeniem podczas implemenacji fazy transfortmacji są przeklamania, więc trasformacja wiąże się z naprawianiem danych niepoprawnych np. źle zapisanych nazw miast lub rozbieżności - w jednym systemie zapisywane bez polskich literw drugim z polskimi literami albo błędy literowe popełniane przez pracowników wprowadzających dane. Poprawianie danych nazywane jset czyszczeniem danych - polega na naprawianiu usterek, które w danych są zawarte, uzupełnianiu braków, niwelowaniu przeklamań, integrowaiu danych niepoprawnych, rozbieżnych. Innym krokiem fazy transformacji jest znakowanie czasowe danych oznaczające koniecznosc uzupelniania znaczników czasowych na etapie transformacji. Loading czyli wczytywanie, umieszczanie wyekstrahowanych i przetransforwanych danych wewnątrz docelowej hurtowni danych. Jest ostatnim etapem pracy aplikacji ETL. Wykonywanie polecenia Insert to najgorszy ze sposobów wczytywania danych do hurtowni ze wzgledu na niska wydajność w przypadku informacji masowych. Rozwiązania komercyjne oferują specjalne rodzaje równoległych Insert’ów, równoległych operacji wczytywania, pomijania interpretera jezyka SQL, zapisywania danych bezpośrednio do binarnych plków systemu zarządzania bazą danych. Poszukuje się metod, aby wczytywanie dużej ilosci danych zabierało taką ilość czasu, by możliwe było wczytanie danych przed nadejściem momentu kolejnego załadowania danych. Systemy hurtowni danych wydają się pracować naprzemiennie w dwóch trybach: pierwszy tryb pracy to tryb wykonywania zapytań analitycznych przez użytkowników drugi tryb pracy to tryb ładowania danych. Te dwa tryby pracy wzajemnie się przeplatają: periodycznie w nocy wykonywane są operacje ETL, w dzień następuje obsługa zapytań. Zmienia sie natura obciążenia systemu hurtowni danych. Fakt ten ma negatywny wpływ jeśli chodzi o strojenie wydajnosci i zarządzanie systemem hurtowni danych. Hurtownia danych jest systemem bazy danych. System bazy danych jest zwykle konfigurowany przez jego administratora w taki sposob, żeby jak naj- ROZDZIAŁ 3. PROCES ETL - ZASILANIE HURTOWNI DANYCH 29 lepiej radził sobie z obciążeniem generowanym przez użytkowników; konfiguracja dotyczy doboru obszarow buforowych, rozkładu plików na dysku, doboru wykorzystania pamięci operacyjnej na potrzeby obsługi sesji użytkowników, doboru rozmiaru pewnych struktur pomocniczych. Strojenie wydajności prowadzi się dobrze kiedy profil obciążenia jest stabilny jezeli np. w systemie opracyjnym liczba pracowników bankowych wykonujących operacje przelewu jest mniej, więcej stała, kiedy ilość informacji na dzień jest podobna, wtedy administartor systemu bazy danych jest w stanie dobrze dobrać paramentry konfguracyjne, aby zapewnić maksymalna wydajnosc tego systemu. Poblemy pojawiają się wtedy, kiedy zmienia sie profil obciążenia. W systemie hurtowni danych profil nie jest stabilny, statyczny. W nocy pojawia się ogromna ilość operacji zapisu, wprowadzania nowych danych, natomiast w dzień trudne zapytania a zupełnie znikają operacje zapisu. Hurtownia danych powinna mieć inne ustawienia konfiguracyjne w nocy a inne w dzień - dwie alternatywne konfiguracje. Wielu producentów systemów baz danych, które mogą służyć jako podstawa do implementacji hurtowni danych oferuje mechanizmy przygotowywania alternatywnych zestawów parametrów konfiguracyjnych i automatycznego ich przełaczania. Administrator dopasowuje wartości parametrów konfigacyjnych do trybów pracy nocnego i dziennego, a następnie definiuje sposób przełączania pomiedzy trybami. Implementacja ETL jest zazwyczaj bardzo kosztowna. W skali całego projektu wdrażania środowiska BI implementacja aplikacji ETL pochłania nawet 70% czasu pracy projektantów i programistów co wynika z trudności zaoferowania na rynku gotowego, uniwersalnego narzędzia ETL. Zwykle narzędzia te muszą być implementowane, projektowane na potrzeby konkretnego wdrozenia. W wielu projektach twórcy, programiści musza nawet sięgać po archaiczne jezyki programowania i dobudowywac do starych systemów istniejacych moduły pobierania danych. Implemetacja ETL jest trudna, ponieważ na rynku istnieje obecnie jeszce wiele systemów starej generacji. Prawdopodobnie za kilkanaście, kilkadziesiąt lat implementacja narzedzi ETL nie bedzie stanowiła problemu, gdyż wszystkie przedsiębiorstwa będa realizowały swoje systemy informatyczne w technologiach otwartych zgodnych za standardami. Wiekszośc producentów systemów zarządzania bazami danych oferuje środowiska ułatwiajace implementację narzędzi ETL np.: generatory aplikacji, gotowe biblioteki. Pomimo to rola programisty niskopoziomowego jest bardzzo znacząca w przedsięwzieciach tego typu. ROZDZIAŁ 3. PROCES ETL - ZASILANIE HURTOWNI DANYCH 30 3.2 Narzędzia ETL Narzędzia ETL ekstrahują dane z wielu źródeł, transformują dane z formy zoptymalizowanej pod względem transakcji do zoptymalizownej do wykonawania analiz i raportów, sychronizją dane pochodzące z różnych baz danych, wykonanują „czyszcenie danych” w celu usunięcia błędów oraz ładują dane do hurtowni danych. Uzywanie narzędzi ETL podczas projektowania systemu BI oszczędza czas i pieniądze ze względu na brak konieczności ręcznego kodowania. Ręczne kodowanie jest jednak najpopularniejszym sposobem integrowania danych co jednak wymaga wielu godzin pracy programistów. Do narzędzi ETL można zaliczyć: - Informatica - Power Center - IBM - Websphere DataStage(przed zakupem produkt DataStage firmy Ascential) - SAP - BusinessObjects Data Integrator - IBM - Cognos Data Manager (przed zakupem produkt DecisionStream firmy Cognos) - Microsoft - SQL Server Integration Services - Oracle - Data Integrator (przed zakupem produkt Data Conductor firmy Sunopsis) - SAS - Data Integration Studio - Oracle - Warehouse Builder - AB Initio - Information Builders - Data Migrator - Pentaho - Pentaho Data Integration (Kettle) - Embarcadero Technologies - DT/Studio - IKAN - ETL4ALL - IBM - DB2 Warehouse Edition - Pervasive - Data Integrator - ETL Solutions Ltd. - Transformation Manager - Group 1 Software (Sagent) - DataFlow - Sybase - Data Integrated Suite ETL - Talend - Informatica - PowerCenter - Inaplex - Inaport cite11 ROZDZIAŁ 3. PROCES ETL - ZASILANIE HURTOWNI DANYCH 31 3.3 Porównanie dostępnych narzędzi Wdrożenie Talend – tworzy plik Javy lub Perl’a, który moze byc uruchomiony na komputerach o bardzo małych zasobach. Rekomendowane: 1x1Ghz CPU, 512MB RAM. Pentaho Kettle – to silnik stworzony w Javie, może być uruchomiony na każdym komputerze obsługującym Javę, pracować w trybie automatyczym; może być wdrożony na wielu maszynach używanych jako “slave servers” by wspomagać wykonywanie transformacji. Rekomendowane: 1x1Ghz CPU, 512MB RAM. Informatica PowerCenter – wymaga serwera: Windows, Solaris, HP-UX, IBM-UX, Redhat, SUSE linux. Rekomendowane dla Standard Edition Server: 2xCPU, 1GB RAM. Inaplex Inaport – platforma Windows, .NET 2.0 Rekomendowane: 1xCPU 50MB RAM. Wydajność Wydajność narzędzi ETL zależy od wielkości danych jakie muszą być przetransferowane i przetworzone. Talend – aplikacja wolniejsza niż Pentaho. Pentaho Kettle – oprogramowanie wydajniejsze od Talend, ale połaczenia Javy spowalniają pracę. Może być wdrożony na wielu rozproszonych komputerach. Informatica PowerCenter – najwydajniejsze narzędzie. Zaimplementowano zaawansowaną opcję “PushDown”, która zarządza wykonywaniem transformacji zależnie od obciążenia systemu. Inaplex Inaport – nie zaimplementowano żadnych technik w celu poprawy wydajności. Rozdział 4 Technologie i narzędzia dostępowe W niniejszym rozdziale zostaną przedstawione narzędzia dostępowe, zostanią omówione najważniejsze związane z nimi technologie: OLAP i eksploracja danych. Narzedzia dostępowe to narzędzia dla użytkowników końcowych do przeglądania hurtowni danych. Narzędzia dostępowe dla użytkowników, podzielone na pięć grup: • narzędzia do tworzenia raportów i zapytań; • narzędzia programowania aplikacji; • narzędzia systemu informacyjnego zarządu EIS; • narzędzia przetwarzania analitycznego on-line (OLAP); • narzędzia eksploracji danych (data mining). Istnieją dwa typy narzędzi analitycznych: - narzędzia przetwarzania analitycznego OLAP, - narzędzia eksplorujące dane (data mining). 4.1 Technologia i OLAP OLAP (bieżące przetwarzanie analityczne) to specyficzny sposób przetwarzania danych, który występuje w środowiskach klasy Business Intelligence; 32 ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 33 Rysunek 4.1: Przepływ danych w BI i narzędzi dostępowe dynamiczna synteza, analiza i konsolidacja dużych wolumenów wielowymiarowych danych. To technologia używająca wielowymiarowych perspektyw zagregowanych danych w celu zapewnienia szybkiego dostępu do strategicznych informacji przeznaczonych do zaawansowanych analiz. Pozwala użytkownikom na uzyskanie głębszego zrozumienia oraz dodatkowej wiedzy o różnorodnych aspektach swoich danych korporacyjnych poprzez szybki i interaktywny dostęp do wielu odmian sposobów widzenia danych. OLAP wspomaga procesy podejmowania decyzji dotyczących przyszłych działań. Analizy uzyskiwane z systemów OLAP obejmują podstawowe takie jak nawigacja i przeglądanie („krojenie wzdłuż i w poprzek”), standardowe obliczenia i wreszcie bardzo złożone analizy (szeregi czasowe, skomplikowane modelowanie). W klasycznych bazach danych przetwarzania realizowane są najczęśniej poprzez wykonywanie poleceń jezyka SQL np.: operacje wprowadzenia nowego rekordu do tabeli czy krotki do relacji, operacja projekcji, selekcji, połaczenia relacji, złączenia tabel, operacje sortowania, grupowania , fltrowania. W przypadku systemów hurtowni danych okazało sie, że paradygmaty jezyka SQL nie spełniają wymagań funkckjonalnych aplikacji analitycznej wykorzy- ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE stywanych przez decydentow. 34 4.1.1 Model OLAP Model OLAP to model danych i model przetwarzania, będący jakby konkurencją dla modelu relacyjnego, w którym dane gromadzone są w formie tabel a jezyk zapytań, zwykle SQL, umożliwia wykonywanie pewnych operacji na tych danych. W modelu OLAP struktura danych jest innna nierelacyjna i zbiór operacji podstawowych także różni się od operacji charakterystycznych dla modelu relacyjnego. Dane w modelu przetwarzania OLAP nie są reprezentowne w postaci relacji czy obiektów, ale reprezentowne w postaci tzw. wielowymiarowego modelu danych, natomiast obiekty wielowymiarwego modelu danych nazywane sa często kostkami danych. Serwery baz danych OLAP używają wielowymiarowych struktur do przechowywania danych i związków pomiędzy nimi. Struktury te wizualizowane są w postaci kostki danych lub kostki w kostkach danych. Każdy bok kostki to oddzielny wymiar. Kostka OLAP (ang. OLAP cube) - wielowymiarowa baza danych, która przechowuje dane w sposób bardziej przypominający wielowymiarowe arkusze kalkulacyjne niż tradycyjną, relacyjną bazę danych. Kostka umożliwia wyświetlanie i oglądanie danych z różnych punktów widzenia. Do jej budowy potrzeba dowolnego źródła danych opartego na relacjach. Ze względów wydajnościowych zaleca się stosowanie źródeł opartych na języku SQL i technologii hurtowni danych.1 Dane gromadzone są w komórkach pewnej np. trówymiarowej kostki opisane są za pomocą współrzędnych. W realnych zastosowaniach systemów hurtowni danych kostki liczą po dziesięć, dwadzieścia wymiarów, każda komórka jest opisywania, adresowana, wyrażona w układzie kilkunastu, kilkudziesięciu wymiarów, stąd dane o działalności firmy mają charakter przestrzenny. W odniesieniu do wielowmiarowego modelu danych stosuje sie pojecia faktów, miar, wymiarów. Fakty reprezentują zdarzenia biznesowe, o których chcemy przechowywać informacje np. fakt sprzedaży. Każdy fakt jest komórką w kostce wielowymiarowej; w komórce znajduje sie wartość miary będąca liczbą charakteryzującą fakt np. dla faktu sprzedania produktu może to byc kwota sprzedaży. Wymiar odnosi się do osi układu współrzędnych, w którym jest umieszczona kostka wielowymiarowa. Na osi współrzędnych odnosimy np. adres 1 cyt. z: pl.wikiedia.org ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 35 opisujący lokalizację faktu, czyli komórki. W systemie hurtowni danych w modelu wielowyiarowym wykorzystywany jest inny sposób adresowania danych niż w klasycznych relacyjnych sytemach, gdzie występują pojęcia wiersza i kolumny. Tutaj dane opisuje się mówiąc: miara faktu opisanego pewnymi wymiarami. Najważniejsze cechy faktów, miar i wymiarów. Miary maja wartości ciągłe, numeryczne np.: wartość sprzedaży, koszt, zysk. Wymiary maja zwykle wartosci dyskretne, niezmienne albo rzadko zmienne, ponieważ osie układu współrzędnych zwykle wyskalowywane są jednokrotnie i nie zmieniaja się. Jednakże kostka może w „rosnac” mogą dochodzić nowe wymiary np. fima otwiera nowy sklep, siedzibę, ale zazwyczaj kostka jest stabilna i osie wymiarów pozostają niezmienne. Wymiary klient, czas, produkt, sklep to przykłady współrzędnych, do których odnosimy fakty i ich miary. W bardziej złożonych środowiskach hurtowni danych wymiary miewają naturę hierarchiczną np. czas: dzien, miesiac, rok. Dni grupują się w tygodnie, tygodnie w miesiące, miesiące w kwartały a następnie w lata - występuje hierarchia wartości wymiarów. Pożądane jest posługiwanie się hierarchicznymi wymiarami w przypadku hurtowni danych, gdyż daje to możliwosc ciekawej interakcji użytkownikowi. Hierachiczne wymiary zwiazane mogą być z czasem, lokalizacją geograficzną, kategoriami i podkategoriami produktów. Hierachia wymiarów to rodzaj struktury drzewiastej, w której wartosci wymiarow są agregowane, grupowane w bardziej ogólne pojecia. W odnieieniu do hierarchi wymiaru posługujemy się pojęciem poziomu, które oznacza „piętro” w drzewie hierarchi np: poziom dni, poziom miesięcy, poziom lat w aplikacji analitycznej możliwe jest zarządanie pokazania na przykład danych sprzedaży zgrupowanych na poziomie lat, tygodni itp. Atrybuty to zmienne lub cechy, które służą do charakteryzowania poszczególnych poziomów hierarchi wymiarów. Na każdym poziomie wartość wymiaru jest w pewien sposób opisana; na poziomie dni opisem jest numer dnia, tygodni - numer tygodnia w roku, miesiaca - nazwa miesiaca. Istnieje rożnorodność w opisie na rożnych poziomach hierarchii opisywać może liczba całkowita lub łańcuch znakowy. Poza kostką danych rozumianą jako model reprezentacji danych w hurtowniach danych w dziedzinie OLAP mówi się o podstawowych operacjach wykonywanych na kostce danych przez użytkownika. Zdefiniowano w tej dziedzinie operacje podstawowe OLAP i tymi operacjami podstawowymi posługuje się użytkownik aplikacji analitycznej, aby okreslić która część kostki w jaki sposób widziana interesuje go w danym momencie. ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 36 Rysunek 4.2: Trójwymiarowa kostka danych. Źródło ilustracji: http:\\ exonous.typepad.com\mis\datawarehouse.jpg Operacje podstawowe OLAP: 1. agregacja czasem nazywana konsolidają lub zwijaniem wymiaru - roll-up - operacja, w ramach której użytkownik aplikacji biznesowej „przechodzi” na ogólniejszy poziom wymiaru np. ”zwiniecie” dni do poziomu miesięcy; 2. rozwijanie wymiaru to działanie odwrotne do agregacji i oznacza przejście na bardziej szcegółowy poziom wymiaru roll-down, drill-down; 3. operacja selekcji, slicing and dicing - logiczna do operacji selekcji w relacyjnej bazie danych, oznacza wybór fragmentu danych poprzez zawężenie wartości wymiarów, zbioru danych, z kostki wielowymiarowej „wycinamy” fragment odszący się do zadanego przedziału współrzędnych; ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 37 4. operacja obrotu,pivot - operacja, w ramach której użytkownik aplikacji biznesowej określa jakie wymiary i w jakiej organizacji chce wizualizować na ekranie, zamiana miejscami wymiarów, wymiana wyświetlanych wymiarów. MDX (ang. Multidimensional Expressions - wielowymiarowe wyrażenia) - język zapytań dla wielowymiarowych struktur OLAP pozwalający na zadawanie zapytań online w kostkach analitycznych.2 Proste zapytanie MDX wygląda następująco: SELECT {[Measures].[Unit Sales], [Measures].[Store Sales]} ON COLUMNS, {[Product].members} ON ROWS FROM [Sales] WHERE [Time].[1997].[Q2] Organizacja ANSI zaakceptowała zbiór funkcji OLAP jako poprawkę do SQL. Obecnie OLAP stanowi rozszerzenie standardu SQL pozwalające na realizację obliczeń statystycznych, rankingu, ruchomych średnich i sum, skumulowanych sum, porównania, podział rynku, zestawienia oraz wielu innych złożonych obliczeń. Większość zapytań wielowymiarowych odnosi się do skumulowanych danych, dlatego sposobem na zbudowanie efektywnej wielowymiarowej bazy danych jest wstępna kumulacja, której przeprowadzenie może być szczególnie wartościowe ze względu na hierarchiczną naturę typowych wymiarów. Posiadanie wstępnie zdefiniowanych hierarchii w ramach wymiaru pozwala na logiczną wstępna agregację oraz logiczną eksplorację danych. Reprezentacja danych w postaci wielowymiarowej to zwarty i zrozumiały sposób na ich wizualizację i manipulację. Kostka może być rozszerzana przez dołączanie kolejnych wymiarów. Wraz ze wzrostem liczby wymiarów liczba elementów kostki rośnie wykładniczo. Na kostce można wykonywać operacje matematyczne. Czas odpowiedzi na wielowymiarowe zapytanie zależy od liczby elementów kostki, które muszą być zsumowane w trakcie realizacji. 4.1.2 Reprezentacje wielowymiarowej kostki danych Chociaż hurtownia danych wszyskie informacje gromadzi w wielowymiarowej kostce danych, możliwe jest wykorzystywanie relacyjnych baz danych do obslugi hurtowni. 2 cyt. z: pl.wikiedia.org ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 38 Istnieją dwa sposoby na implementację struktury kostki wielowymiarowej jako relacji podczas wykorzystania relacyjnego systemu zarządzania bazą danych jako fundamentu hurtowni. Metody zastosowania schematu gwiazdy, płatka śniegu i konstelacji faktów opisano w rozdziale drugim niniejszej pracy. Implementacje logicznego wielowymiarowego modelu danych • Relacyjna implementacja modelu (ROLAP) 1. -powiązane ze sobą relacje faktów i wymiarów 1. -schematy logiczne: 1. -materializowane perspektywy dla wartości agregowanych • Wielowymiarowa reprezentacja modelu MOLAP 1. -dane fizycznie składowane w postaci wielowymiarowej Serwery wielowymiarowych baz danych realizują ogólne operacje analityczne: - Konsolidacja - wymaga agregacji danych, prostych ”zwinięć” lub obliczania wyrażeń dotyczących wzajemnie powiązanych danych; - Eksploracja - operacja odwrotna do konsolidacji, wymagająca prezentacji szczegółowych danych; - ”krojenie wzdłuż i w poprzek” tzw. obracanie - możliwość oglądania danych z różnych punktów widzenia, odbywa się często wzdłuż osi czasu, gdy celem jest analiza trendów i szukanie wzorców; Są zdolne przechowywać dane wielowymiarowe w skompresowanej formie. Zdolność wielowymiarowych SZBD do pomijania pustych i powtarzających się komórek pomaga zredukować znacznie rozmiar kostki i ilość przetwarzań. Poprzez właściwą optymalizację wykorzystania przestrzeni mogą zminimalizować wymagania, co do pamięci fizycznej i umożliwić analizę wyjątkowo licznych danych. Kompresja pozwala na wprowadzenie większej ilości danych do pamięci, co przyczynia się do znacznego wzrostu wydajności poprzez minimalizację operacji dyskowych wejścia/wyjścia. Wstępna agregacja, hierarchie wymiarów i zarządzanie rzadkimi danymi mogą znacznie zredukować rozmiar bazy danych i potrzeby obliczania wartości. Właściwy projekt struktury bazy pozwala uniknąć konieczności wykonywania złączeń wielu tabel i zapewnia szybki i bezpośredni dostęp do tablic danych, zatem przyspiesza znacznie realizację wielowymiarowych zapytań. ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 39 4.1.3 Narzędzia OLAP OLAP (ang. online analytical processing) - oprogramowanie wspierające podejmowanie decyzji, które pozwala użytkownikowi analizować szybko informacje zawarte w wielowymiarowych widokach i hierarchiach. Narzędzia OLAP są często używane do wykonywania analiz trendów sprzedaży czy analiz finansowych (hurtownia danych). Są też przydatne do wstępnego obejrzenia zbioru danych przez analityka we wstępnej fazie analiz statystycznych.3 Reguły sformułowane w 1993 roku przez E.F. Codda stanowiące podstawę wyboru narzędzi OLAP: 1. Wielowymiarowe perspektywy pojęciowe 2. Przezroczystość 3. Dostępność 4. Niezmienna wydajność raportowania 5. Architektura klient-serwer 6. Standardowa wielowymiarowość 7. Dynamiczna obsługa rzadkich tablic 8. Obsługa wielodostępności 9. Nieograniczone operacje w poprzek wymiarów 10. Intuicyjna manipulacja danymi 11. Elastyczne raportowanie 12. Nieograniczona liczba wymiarów i poziomów agregacji Główne kategorie narzędzi OLAP związane z architekturą stosowanej bazy danych (dostarczającej danych na potrzeby przetwarzania analitycznego on-line OLAP): • MOLAP - wielowymiarowe OLAP • ROLAP - relacyjne OLAP • HOLAP, MQE - hybrydowe OLAP, środowiska zarządzanych zapytań MOLAP - korzysta ze specjalnych struktur danych oraz systemów zarządzania wielowymiarowymi bazami danych MDDBM; dane są zazwyczaj agregowane i przechowywane odpowiednio do sposobów użycia. Narzędzia MOLAP zapewniają doskonała wydajność. Struktury danych stosowane w MOLAP mają ograniczone możliwości obsługi wielu obszarów podmiotowych 3 cyt. z: pl.wikiedia.org ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 40 oraz zapewnienia dostęp do szczegółowych danych, nawigacja i analiza danych są w MOLAP ograniczone. MOLAP wymaga innych umiejętności i narzędzi do tworzenia i pracy z bazą danych. ROLAP - najszybciej rozwijająca się technologia OLAP; korzysta z produktów RSZBD poprzez użycie warstwy metadanych, unikając konieczności tworzenia statycznej wielowymiarowej struktury danych, co umożliwia tworzenie wielu wielowymiarowych perspektyw danej dwuwymiarowej relacji. W celu zwiększenia wydajności niektóre produkt ROLAP zawierają motory SQL przystosowane do realizacji wielowymiarowych analiz. Pozostałe wymuszają użycie zdenormalizowanych baz danych takich jak schemat gwiazdy. Technologia ROLAP wymusza tworzenie oprogramowania pośredniczącego przekształcającego dwuwymiarową relację w wielowymiarową strukturę oraz opcji pozwalającej na zbudowanie stałych wielowymiarowych struktur o programów do administrowania nimi. MQE - oferują ograniczone możliwości analizy; pobierają dane wprost z SZBD lub poprzez serwer MOLAP i przekazują je do lokalnego komputera, serwera w postaci kostki danych gdzie jest lokalnie zapisywana, analizowana i pielęgnowana. Technologia MQE jest promowana, jako prosta w instalacji i administracji, tania i łatwa w konserwacji. Opisywane architektura doprowadza d znacznej redundancji danych powoduje problemy w sieciach obłupujących wiele użytkowników. Możliwość budowania własne kostki danych przez każdego użytkownika może spowodować utratę spójności danych. Używa się również, choć rzadziej niż powyższych, kategorii: • Desktop OLAP (DOLAP) – systemy niewielkiej, ”osobistej” skali, • Real-time OLAP (RTOLAP) – systemy czasu rzeczywistego, • Web-based OLAP (WOLAP) – systemy dostępne w publicznej sieci. 4 Aplikacje OLAP są oceniane pod kątem wydajności oraz zdolności dostarczania informacji JIT - ”akurat teraz”. Zdefiniowano miarę porównawczą AQM reprezentującą liczbę zapytań analitycznych przetworzonych w ciągu minuty włącznie z wprowadzaniem danych i obliczeniami. AQM wyraża wydajność wprowadzania danych, wykonywania obliczeń i realizacji zapytań. Typowy relacyjny SZBD potrafi przeczytać parę setek rekordów ciągu jednej sekundy. Natomiast typowy wielowymiarowy SZBD potrafi wykonać agregację z szybkością, co najmniej 10 tysięcy wartości na sekundę. 4 cyt. z: pl.wikiedia.org ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 41 Aplikacje OLAP istnieją w różnych obszarach zastosowań: budżetowaniu, analizie wydajności finansowej, modelowaniu finansowym, analizie i prognozowaniu sprzedaży, analizie promocji, klientów, analizie badawczej i segmentacji rynku oraz planowaniu produkcji i analizie defektów. Wszystkie aplikacje OLAP bez względu na obszar zastosowań muszą posiadać kluczowe właściwości, do których należą: - Wielowymiarowe perspektywy danych - podstawa przetwarzania analitycznego poprzez zapewnienie elastycznego dostępu do danych korporacyjnych, użytkownik może oglądać dane na różne sposoby, w różnych wymiarach; - Realizacja złożonych obliczeń; - Inteligencja czasowa - kluczowa cecha prawie każdej aplikacji analitycznej, gdyż osiągnięcia są niemal zawsze oceniane w perspektywie czasowej: porównuje się dany miesiąc w stosunku do innego miesiąca. 4.2 Eksploracja danych „Eksploracja danych (spotyka się również określenie drążenie danych, pozyskiwanie wiedzy, wydobywanie danych, ekstrakcja danych) (ang. data mining) to jeden z etapów procesu odkrywania wiedzy z baz danych (ang. Knowledge Discovery in Databases, KDD). Istnieje wiele technik eksploracji danych, które wywodzą się z ugruntowanych dziedzin nauki takich jak statystyka (statystyczna analiza wielowymiarowa) i uczenie maszynowe. Idea eksploracji danych polega na wykorzystaniu szybkości komputera do znajdowania ukrytych dla człowieka (właśnie z uwagi na ograniczone możliwości czasowe) prawidłowości w danych zgromadzonych w hurtowniach danych.”5 Eksploracja danych stanowi jeden z najlepszych sposobów wyznaczania istotnych trendów i wzorców na podstawie olbrzymich ilości danych. Celem eksploracji danych jest wyszukiwanie ukrytych i nieoczekiwanych informacji w hurtowniach danych, których nie można efektywnie wyszukać za pomocą zapytań i raportów. Analiza odpowiednich reguł i właściwości występujących w danych prowadzi do wyznaczenia ukrytych wzorców i związków. Wzorce danych mogą zostać przekształcone w cenną informację, jeśli dokona się właściwej interpretacji biznesowej. Następnie pozyskane informacje wykorzystuje się do podejmowania istotnych decyzji biznesowych. Techniki i metody służące eksploracji danych wywodzą się głównie z obszaru badań nad sztuczną inteligencją. Główne przykłady stosowanych rozwiązań należą do następujących zakresów: 5 cyt. z: pl.wikiedia.org ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 42 Rysunek 4.3: Proces eksploracji baz danych. Źródło: Cezary Głowiński: Sztuka wysokiego składowania 2000 * wizualizacje na wykresach, * metody statystyczne, * sieci neuronowe, * metody uczenia maszynowego, * metody ewolucyjne, * logika rozmyta, * zbiory przybliżone. Istnieją dwa rodzaje eksploracji danych: weryfikacja hipotez i odkrywanie wiedzy. Aby możliwe było wykonanie eksploracji danych posiadane dane muszą być odpowiednio zintegrowane i dobrej jakości, gdyż błędy w danych mogą wpływać na wyniki procesów eksploracji. Błędy danych określa się jako szum i zachodzi zależność im większy szum tym mniejsza dokładność przewidywania. Nie jest prawdziwa opinia, iż do wykonania eksploracji potrzebna jest ogromna ilość danych. Ważne jest natomiast, aby dane poddawane eksploracji były reprezentatywne i niewypaczone w żaden sposób. Dobre wyniki mogą być osiągnięte przy małych ilościach danych, jeśli dane obejmują zakres możliwych wyników. Proces analizy w eksploracji danych rozpoczynany jest od znalezienia optymalnej reprezentacji dla próbki danych, do czego konieczna jest znajomość zależności czasowych. Następnie wiedza ta jest rozszerzana na większe zbiory danych, dla których można przyjąć, że mają podobną strukturę do danych z próbki. Eksploracja danych to względnie nowa technologia, jednakże jest już stosowana w wielu gałęziach gospodarki, w wielu dziedzinach np.: sprzedaż i marketing, bankowość, ubezpieczenia, medycyna. ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 43 Rysunek 4.4: Etapy procesu KDD - odkrywania wiedzy z baz danych (ang. Knowledge Discovery in Databases). Źródło ilustracji: http:\\www.kmining.com\kdd-data-mining.gif Z technikami eksploracji danych związane są cztery główne operacje, do których należą: • modelowanie prognostyczne, • segmentacja bazy danych, • analiza powiązań, • wykrywanie odchyleń. Techniki to specyficzne implementacje operacji, które są używane do przeprowadzenia operacji eksploracji danych. Każda operacja posiada swoje własne silne i słabe punkty. Operacje Techniki eksploracji danych Modelowanie prognostyczne Klasyfikacja, prognozowanie wartości Segmentacja bazy danych Grupowanie demograficzne i neuronowe analiza powiązań Wykrywanie powiązań, wzorców sekwencyjnych i podobnych następstw czasowych wykrywanie odchyleń Statystyka, wizualizacja Tabela 4.1: Operacje eksploracji danych i związane z nimi techniki Modelowanie prognostyczne jest podobne do procesu uczenia się; obserwacje są używane do stworzenia modelu ważnych właściwości pewnego ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 44 zjawiska. Może być stosowane do analizy istniejącej bazy danych. Celem jest wyznaczenie modelu - wybranych właściwości - zawartego w bazie, który powstaje za pomocą metody nadzorowanej nauki. Do aplikacji modelowania prognostycznego zaliczyć można: zarządzanie strategią utrzymania klientów, zatwierdzanie kredytów, sprzedaż krzyżową i marketing bezpośredni. Z operacją modelowania prognostycznego związane są dwie techniki rozróżnialne ze względu na właściwości przewidywalnej zmiennej: • Klasyfikacja - używana do ustalenia przynależności każdego rekordu bazy danych do jednej wybranej klasy spośród skończonego zbioru możliwych klas; wyróżniamy dwie specjalizacje: indukcja po drzewie i indukcja neuronowa; • Przewidywanie wartości - używane do oszacowania wartości numerycznych związanych z rekordem w bazie danych; oparta o tradycyjne techniki statystyczne: regresję liniową i nieliniową; stosowana do wykrywania oszustw za pomocą kart kredytowych oraz identyfikacji docelowej listy wysyłkowej; Segmentacja bazy danych dzieli bazę na nieznaną z góry liczbę segmentów lub klastrów podobnych rekordów. Metoda korzysta z niekontrolowanej nauki do wykrywania jednorodnych podpopulacji w bazie danych. Nie jest operacją precyzyjną, dlatego jest w mniejszym stopniu wrażliwa na nadmiarowe i nieistotne cechy. Celem jest poprawienie dokładności profilowania. Segmentacja stosowana jest przy profilowaniu klientów, w marketingu bezpośrednim oraz sprzedaży krzyżowej. Wiąże się z dwoma technikami: grupowaniem demograficznym i neuronowym, które różnią się dopuszczalnymi danymi wejściowymi, metodami obliczania odległości pomiędzy rekordami oraz prezentacją segmentów otrzymanych w analizie. Analiza powiązań ma na celu ustalenie więzów nazywanych związkami, pomiędzy poszczególnymi rekordami lub zbiorami rekordów w bazie danych. Wyróżniamy trzy specjalizacje: • Wykrywanie powiązań; • Wykrywanie wzorców sekwencyjnych; • Wykrywanie podobnych następstw czasowych. Zastosowaniami analizy powiązań są: analiza powinowactwa produktów, marketing bezpośredni i śledzenie kursów akcji. ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 45 Wykrywanie odchyleń jest techniką względnie nową w odniesieniu do dostępnych komercyjnych narzędzi eksploracji danych. Często bywa źródłem odkryć, gdyż identyfikuje wartości odległe, reprezentujące odchylenia od wartości średnich i norm znanych uprzednio. Analizy tego typu mogą być wykonywane za pomocą technik statystycznych i wizualizacyjnych lub jako produkt uboczny przy eksploracji danych. Techniki wizualizacji przedstawiają podsumowania i graficzne reprezentacje pozwalające na łatwe wykrywanie odchyleń. Techniki wykrywania odchyleń są stosowane przy wykrywaniu oszustw popełnianych za pomocą kart kredytowych i przy zgłoszeniach szkód ubezpieczeniowych, kontrolę jakości i śledzenie defektów. Rysunek 4.5: Ekploaracja danych. Źrodło ilustracji: http:\\mail.scianta.com\ technology\ imagesdata-mining.jpg ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE Istotnymi cechami narzędzi eksploracji danych są: • Dostępność narzędzi do preparacji danych; 46 • Możliwość wyboru operacji (algorytmów) eksploracji danych - wynika z przydatności pewnych typów danych wejściowych, czytelności wyniku eksploracji, tolerancji dla nieobecnych wartości zmiennej, poziomu możliwej dokładności oraz zdolności do przetworzenia dużych ilości danych; • Skalowalność i wydajność produktu; • Dostępność metod wizualizacji wyników; Na rynku jest oferowana coraz większa liczba narzędzi eksploracji danych. Eksploracja wymaga jednego, wydzielonego, oczyszczonego, zintegrowanego i wewnętrznie niesprzecznego źródła danych. Hurtownie danych posiadają odpowiednie środki do dostarczania danych niezbędnych do eksploracji, ponieważ właśnie takimi danymi zapełniane są i takie dane zawierają. Poniżej przedstawiono właściwości hurtowni danych powiązane z eksploracją danych: • Jakość i niesprzeczność danych - warunek wstępny, gdyż modele prognostyczne muszą zapewniać odpowiednią dokładność; • Dane pochodzące z wielu źródeł - korzystne dla eksploracji w celu wykrycia wzajemnych powiązań danych w liczbie jak największej; • Duże możliwości formułowania zapytań - wymagane przez konieczność wyboru odpowiednich podzbiorów rekordów i pól do eksploracji danych; • Możliwości powrotu do źródła danych - wyniki badań eksplorujących dane są użyteczne, jeśli dostępny jest sposób dalszego badania odkrytych wzorców; Poszukiwane są sposoby integracji technologii eksploracji i hurtowni danych ze względu na uzupełniające się ich właściwości. Obszarów stosowania eksploracji danych jest wiele, obejmują one te miejsca, w których stosuje się systemy informatyczne, między innymi w celu gromadzenia pozyskanych danych w postaci baz danych. Istnieje i powstaje coraz więcej baz danych, mając na myśli ich liczbę i objętość. Ogromne zbiory ROZDZIAŁ 4. TECHNOLOGIE I NARZĘDZIA DOSTĘPOWE 47 danych gromadzone są w hurtowniach danych. Z powodu dużej prostoty konstruowania bazy danych oraz akceptowalnych cen, systemy gromadzące dane stosuje się prawie we wszystkich dziedzinach życia. Wszędzie tam natomiast, gdzie istnieje już baza danych, pojawia się potrzeba analizy tych danych w celu odkrycia nieznanej dotąd wiedzy. Dziedziny, w których szeroko stosuje się eksplorację danych to: technika, medycyna, astronomia, ekonomia, szeroko pojęty biznes. KDD znajdują zastosowania przy: * eksploracji danych o ruchu internetowym, * rozpoznawaniu sygnałów obrazu, mowy, pisma, * wspomaganiu diagnostyki medycznej, * badaniach genetycznych, * analizie operacji bankowych, * projektowaniu hurtowni danych, * tworzeniu reklam skierowanych(ang. Targeted ads), * prognozowaniu sprzedaży(ang. Sales forecast), * wdrażaniu strategii Cross-selling’owej, * wykrywaniu nadużyć(ang. Fraud detection), * ocenie ryzyka kredytowego, * segmentacji klientów. Przykładem może być odkrycie w danych z supermarketu zależności polegającej na tym że klient, który kupuje szampana i kwiaty, kupuje zwykle również czekoladki. Rozdział 5 Istniejące rozwiązania Business Intelligence Platforma Business Intelligence powinna zapewniać kompleksową infrastrukturę, rozwiązania i technologie obsługujące następujące zagadnienia: - integracja danych - zarządzanie danymi - hurtownie danych - narzędzia BI - repozytorium najlepszych modeli i praktyk biznesowych. Platformy baz danych dla hurtowni danych Wśród wielu dostępnych obecnie platform baz danych obsługujących hurtownie danych do czołowych możemy zaliczyć następujące: - IBM DB2 Warehouse 9.5 - Microsoft SQL Server 2008 - Oracle Database 11g - Teradata Enterprise Data Warehouse 12.0 - Sybase IQ - Netezza Performance Server [DW4U08] Do narzędzi Business Intelligence zaliczamy m.in.: Oracle - Siebel Business Analytics Applications SAS - Business Intelligence SAP - BusinessObjects XI IBM - Cognos 8 BI 48 ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE49 Oracle - Hyperion System 9 BI+ Microsoft - Analysis Services MicroStrategy - Dynamic Enterprise Dashboards Pentaho - Open BI Suite Information Builders - WebFOCUS Business Intelligence QlikTech - QlikView TIBCO Spotfire - Enterprise Analytics Sybase - InfoMaker KXEN - IOLAP SPSS - ShowCase [DW4U08] Analitycy rynku zgodnie plasują SAS Institute na pozycji lidera zarówno na światowym, jak i polskim rynku Business Intelligence. W swoim najnowszym raporcie Magic Quadrant for Business Intelligence Platforms 1Q07 Gartner pozycjonuje SAS Institute w kwadrancie liderów. Ponadto Gartner wymienia SAS Institute wśród liderów Customer Data Mining, Multi-channel Campaign Management i Basel II oraz wśród wizjonerów w zakresie Data Integration Tools, Corporate Performance Management Suites oraz Marketing Resource Management. Rysunek 5.1: Magic Quadrant for Business Intelligence Platforms, 2008. Źródło: Gartner (January 2008) ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE50 Rysunek 5.2: Magic Quadrant for Customer Data Mining. Źródło: www.sas.com Jednocześnie według najnowszego raportu IDC SAS Institute jest jedynym wśród trzech czołowych dostawców BI, który coraz szybciej zwiększa swój udział w światowym rynku. Również niezależna firma analizująca rynek Datamonitor wskazała SAS Institute jako zdecydowanego lidera rynku. Podobnie pochlebnie na temat rozwiązań SAS Institute i pozycji SAS Institute na rynku BI wypowiadają się inni analitycy: Aberdeen Group, AMR Research, Butler Group, Chartis Research, Forrester Research, Nucleus, Ovum, Yphise. 5.1 Microsoft SQL Server 2005 Microsoft SQL Server 2005 to kompletna platforma Business Intelligence (BI) zapewniająca infrastrukturę oraz oprogramowanie serwerowe do tworzenia: • kompleksowych hurtowni danych, łatwych w obsłudze i o wysokiej efektywności kosztowej; • elastycznych systemów raportowania i analiz, które mniejsze przedsię- ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE51 Rysunek 5.3: Udział w rynku poszczególnych producentów. Źródło: www.sas.com biorstwa bądź departamenty dużych przedsiębiorstw mogą łatwo zbudować, i którymi mogą bez problemów zarządzać; • systemów dostarczających dane analityczne do użytkowników merytorycznych; • systemów analitycznych i Data Mining działających w układzie zamkniętym; • osadzonych systemów rozszerzających zasięg rozwiązań Business Intelligence. W skład platformy BI firmy Microsoft oprócz relacyjnej bazy danych SQL Server, wchodzą poniższe narzędzia i usługi: - Analysis Services - Data Mining - Integration Services - Reporting Services - Report builder - Business Intelligence Development Studio - SQL Server Management Studio ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE52 Rysunek 5.4: Platforma Business Intelligence Microsoft. Źródło ilustracji: www.datawarehouse4u.info 5.2 Sybase Sybase jedna z największych na świecie firm specjalizujących się w dostarczaniu oprogramowania do zarządzania informacją w przedsiębiorstwie. Relacyjna baza danych Sybase IQ jest motorem największej na świecie hurtowni danych tworzonej wraz z Sun SPARC Enterprise M9000 Server i BMMsoft Server. Sybase IQ jest w stanie wspierać rekordową ilości informacji na poziomie jednego Petabajta (1024 terabajtów) niezależnych i nieustrukturyzowanych danych. Jest to 34 razy więcej od największych hurtowni baz danych stosowanych w standardowych testach przemysłowych i dwukrotnie więcej niż największe komercyjne hurtownie baz danych znane dotychczas. Całościowo hurtownia potrafi pomieścić i zarządzać 6 bilionami wierszych danych transakcyjnych i ponad 185 milionami dokumentów takich jak emaile, raporty, arkusze kalkulacyjne i inne obiekty multimedialne. Hurtownia potrafi składować znacznie większe ilości danych na mniejszej powierzchni, dodatkowo jest w stanie przeszukiwać i analizować dane w krótszym czasie, zużywając przy tym 91 procent mniej energii i generując mniej ciepła i dwutlenku węgla niż konwencjonalne rozwiązania. Sybase IQ umożliwia użytkownikom zarządzanie ogromnymi ilościami danych i przyspiesza ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE53 procesy analityczne do 100 razy szybciej niż tradycyjne rozwiązania. Zaprojektowana od początku jako serwer analityczny, aplikacja Sybase IQ zawdzięcza swoje niezwykłe możliwości, opatentowanej technologii przetwarzania zapytań, indeksowania w oparciu o kolumny danych oraz algorytmów zoptymalizowanych pod względem wydajności. Sybase oferuje niezwykle wysoką wydajność za niższą cenę w porównaniu do tradycyjnych aplikacji wykorzystujących architekturę baz danych opartych na wierszach . Dane przechowywane dane w Sybase IQ są skompresowane do 70 procent ich wejściowej wielkości. 1 W skład platformy Sybase Business Intelligence wchodzą następujące aplikacje: - PowerDesigner - WorkSpace - Industry Warehouse Studio - ASE Database - Sybase IQ - Data Integration Suite (Replication, Data Federation, Real-time Events, Sybase ETL) - InfoMaker Sybase Warehouse Studio Sybase oferuje Warehouse Studio, który jest zintegrowanym zestawem narzędzi do tworzenia hurtowni danych. 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. Ponadto dostępne są również branżowe pakiety aplikacji Sybase Industry Warehouse Studio, które zostały przygotowane do tworzenia specjalizowanych hurtowni danych. Dodatkowo, Sybase udostępnia pakiet PowerStage przeznaczony do automatyzacji procesów ekstrakcji, transformacji i oczyszczania danych pochodzących z różnych źródeł. Jako platformę do działania hurtowni danych Sybase oferuje własny serwer bazy danych - Adaptive Enterprise Server. 5.3 SAS System SAS Institute, lider w dziedzinie Business Intelligence oraz zaawansowanej analityki ma w ofercie SAS System, który składa się z bazy SAS 1 http:\\www.sybase.com.pl ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE54 Rysunek 5.5: Platforma dło:www.sybase.com Business Intelligence Sybase. Źró- Base oraz dodatkowych modułów rozszerzających jego podstawowe funkcje. SAS/Warehouse Administrator jest przeznaczony do tworzenia skryptów ładujących hurtownie danych. Pakiet SAS/ACCESS pozwala operować na danych zewnętrznych pochodzących z innych serwerów baz danych. W systemie znajdują się moduły pozwalające na zorganizowanie dostępu do hurtowni danych z poziomu Internetu. W ofercie znajduje się również SAS/Enterprise Miner, narzędzie klasy data mining przeznaczone do odkrywania zależności w danych oraz cała gama analiz statystycznych. 5.4 IBM Produkty wchodzące w skład platformy Business Intelligence IBM: ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE55 IBM IBM IBM IBM IBM IBM Cognos 8 Business Intelligence InfoSphere Warehouse InfoSphere Master Data Management Server Information Server Industry Models Business Intelligence Services IBM Visual Warehouse IBM przygotował zintegrowany pakiet oprogramowania biznesowego pod nazwą Visual Warehouse. Pakiet ten zawiera szereg narzędzi przeznaczonych do realizacji poszczególnych kroków projektu hurtowni danych. Należą do nich: oprogramowanie do definiowania schematu, oprogramowanie do ekstrakcji danych z różnych źródeł, ich oczyszczania i przekształcania, oprogramowanie do zasilania hurtowni danymi (ładowania za pomocą SQL-a, przyrostowego oraz równoległego), narzędzia do automatyzacji procesu zasilania (scheduler), podstawowe oprogramowanie do zarządzania, narzędzie analityczne typu OLAP oraz oprogramowanie pozwalające na dostęp do hurtowni za pomocą technologii internetowych. W pakiecie zawarty jest również serwer bazy danych DB2 - platforma, na której może działać hurtownia korporacyjna. W ofercie znajduje się jeszcze dodatkowy pakiet DB2 Warehouse Manager rozszerzający możliwości serwera bazy. Udostępnia on nowe funkcje zarządzania, poprawia skalowalność, zwiększa możliwość kontroli nad zapytaniami oraz metadanymi. IBM oferuje również aplikacje analityczne w technologii OLAP (DB2 OLAP Server) i data mining IntelligentMiner. 5.5 Bizgres ”Bizgres - PostgreSQL for Business Intelligence and Data Warehousing” Projekt Bizgres ma na celu uczynienie PostgreSQL najlepszą i najpopularniejszą na świecie open source’ową platformą dla środowisk Business Intelligence. Jest sponsorowany przez wiele firm w tym najmocniej przez GreenPlum. Firmy wsperające Bizgres: GreenPlum, JasperSoft, Kinetic Networks i Loyalty Matrix tworzą tzw. ”koalicję Bizgres”. Projekt jest nadzorowany przez inżynierów z GreenPlum, członków społeczności PostgreSQL oraz przez programistów z innych firm związanych z projektem takich jak: Kinetic Networks, JasperSoft, Loyalty Matrix i Sun Microsystems. Celem Bizgres zbudowanie komletnego systemu bazodanowego dla środowisk Business Intelligence wyłącznie z darmowego oprogramowania. Bizgres ma ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE56 pomóc uczynić PostgreSQL silną, darmową alternatywą dla systemów firm Oracle, Sybase, Informix i Microsoft. Moża stwierdzić iż Bizgres jest ”dystrybucją” PostgreSQL podobnie jak RedHat i SuSE są dystrybucjami systemu Linux. Bizgres w wersji 0.9 oferuje poniższe cechy wzbogacające, których próżno szukać w PostgreSQL 8.1: • indeksy bitmapowe • zwiększona wydajność sortowania • Bizgres Loader - program napisany w języku Java ułatwiający ładowanie znacznych ilości danych do bazy • Bizgres jest rozpowszechniany z aplikacją Installation Verification Program (IVP) pomagającą stwierdzić czy system Bizgres jest zainstalowany i skonfigurowany poprawnie oraz • z aplikacją webową Bizgres Clickstream będącą narzędziem BI do wykonywania analiz, raportów korzystającą z KETL i JasperReports • KETL to narzędzie ETL (Extraction, Transformation, and Loading) firmy Kinetic Networks • JasperReports firmy JasperSoft jest narzędziem raportującym stworzonych w Javie, które pozwala wyświetlić na ekranie wyniki analizy a następnie wydrukować lub zapisać je w postaci plików PDF, HTML, XLS, CSV, XML JavaLoader jest narzędziem wytworzonym przez Greenplum, które pozwala na ładowanie bazy PosgtreSQL przez sieć. Wspiera ładowanie przez wile strumienie i zawiera limitowanątolerancje na błędy i odzuskiwanie po wystąpieniu błedu, a także innowacje ktore moja wspierać steronik JDBS Bizgres Clickstream jest aplikacją sieciową stworzoną w technologii JSP używającą serwera aplikacyjnego Apache Tomcat. Zawiera serwer ETL firmy Kinetic Networks (KELT) i silnik generujący raporty JasperReports. Bizgres Clickstream wykonuje ekstrakcję, transformację i ładuje dane do bazy Bizgres. ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE57 5.6 Oracle Główne cechy systemu Oracle usprawniające wydajność i zarządzanie aplikacjami hurtowni danych: - Zarządzanie skumulowanymi danymi; - Funkcje analityczne; - Indeksy w postaci bitmapowej; - Zaawansowane metody złączania; - Wyrafinowany optymalizator SQL; - Zarządzanie zasobami; - Możliwość wykonywania przebudowy indeksów na bieżąco; - Możliwość używania indeksów opartych na funkcjach do indeksacji wyrażeń np. arytmetycznych lub funkcji modyfikujących wartości w kolumnach; - Funkcja wyrywkowego przeszukiwania; Oracle Database 11g - Oracle Database for Business Intelligence and Data Warehousing - jest kompleksowym systemem bazodanowym dla hurtowni danych i środowisk Business Intelligence, który łączy skalowalność, wydajność, integralność oraz jakość w jedną platformę opartą o niezawodną, nisko kosztową infrastrukturę gridową. Oracle Database 11g zapewnia funkcjonalność dla hurtowni danych i magazynów danych - data marts, dowiedzioną skalowalnośćia do 100 Terabajtów i innowacyjnej optymalizacji przetwarzania zapytań. Oracle Database 11g jest takżę zintegrowaną platformą do wykonawania analiz. przez osadzenie OLAP, Data Mining, i możliwości statystyczne bezpośrednio w bazie, Oracle dostarcza wszystkich funkcjonalności jakie zapewniają silniki analityczne wraz ze skalowalnością, bezpieczeństwem i niezawodnością bazy Oracle. Oracle Database 11g zawiera także Oracle Warehouse Builder, w tym ETL. Oracle Warehouse Builder - oprogramowanie przeznaczone do projektowania, generowania i zasilania (narzędzie ETL do pobierania, przekształcania i wprowadzania danych) korporacyjnych hurtowni danych. W ofercie znajduje się też serwer bazy danych, który może służyć jako platforma dla hurtowni danych oraz szereg aplikacji analitycznych. Oprogramowanie do projektowania hurtowni pozwala modelować ją wizualnie, dostępne są kreatory wspomagające standardowe działania projektowe oraz biblioteki transformacji danych. Zapewnia to szybkie tworzenie hurtowni, a cały potrzebny kod generowany jest automatycznie. ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE58 Pakiety Oracle Data Mart Suite oraz Oracle Data Mart Suite - Sales & Marketing Edition - służące do tworzenia składnic danych (data mart). Zawierają one oprogramowanie bazodanowe, narzędzia do projektowania, ekstrakcji i transformacji danych oraz zasilania nimi składnic danych, instrumenty do analiz i raportów oraz narzędzia dające dostęp do składnicy poprzez intranet. Oracle Discoverer - oprogramowanie analityczne ogólnego przeznaczenia oparte na technologii OLAP Oracle Express 5.7 SpagoBI SpagoBI to platformą Business Intelligence utworzona w całości w oparciu o filozofię FOSS (Free and Open Source Software). Platforma SpagoBI rozwijana jest przez OW2 Consortium, napisana w języku Java, między-platformowa rozpowszechniana na licencji GNU Lesser General Public License. Jako platforma spełnia wszystkie wymagania BI: zawiera narzędzia raportowania, analizy wielowymiarowej OLAP, zapytań ad-hoc, eksploracji danych i kokpity menadżerskie. Zawiera narzędzia do ekstrakcji danych, transformacji i ładownia (ETL) i wspiera administratora w tworzeniu dokumentów analitycznych, zarządzając wersjonowaniem. Dzięki swojej otwartości, budowie modułowej SpagoBI umożliwia końcowemu użytkownikowi na skomponowanie platformy BI z dostępnych produktów według własnych potrzeb i uznania. Analytical Model jest rdzeniem SpagoBI Server dostarcza narzędzi analitycznych: * raportowanie, * analizy OLAP, * kokpity menadżerskie prezentujące dane w czasie rzeczywistym, * eksploracja danych, * reprezentacji danych ma mapach geograficznych, * ”wolne” zapytania (free inquiry - QbE), * generowanie dokumentów z formatach aplikacji biurowych, * ETL/EII - pozyskiwanie danych z różnych źródeł, Behavioural Model umożliwia administratorowi zarządzanie widocznością danych zgodnie z ustanowioną rolą użytkownika biznesowego (product manager, sales manager, region director itp.). • SpagoBI Studio ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE59 Rysunek 5.6: SpagoBI Server. Źródło: www.spagobi.org SpagoBI Studio to nowe środowisko programistyczne oparte o Eclipse IDE. Umożliwia programistom projektowanie aplikacji analitycznych oraz ich testowanie i wdrażanie na serwer SpagoBI Server. • SpagoBI Meta SpagoBI Meta to moduł zorientowany na zarządzanie metadanymi oraz zapytaniami; umożliwia użytkownikom ich edycję i import z zewnętrznych narzędzi np. ETL. • SpagoBI SDK SpagoBI SDK dostarcza interfejs API pozwalający na zintegrownie SpagoBI z innymi środowiskami. SpagoBI umożliwia pracę na wysokim poziomie abstrakcji zarówno jesli chodzi o dostep do danych jak również o interakcję z użytkownikiem. Wersja 1.9.3 posiada instaler, w zwiazku z czym proces wdrożenia jest szybszy. ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE60 Rysunek 5.7: SpagoBI. Źródło: www.spagobi.org Wdrożenie rozpoczynamy od zainstalowania serwera Tomcat wraz z ExoPortal. Wymagany jest także kompilator języka Perl do aplikacji ETL Talend Open Studio oraz Open Office do generowania plików raportów w formatach pakietów biurowych. Wraz z aplikacją dostarczane jest demo z przykładową bazą danych ułatwiające zapoznanie się z systemem. 5.8 Pentaho Open BI Suite Platforma Pentaho Open Source Business Intelligence jest produktem dystrybuowanym na zasadzie licencji Open Source, który dostarcza pełnej gamy rozwiązań dla biznesu w obszarze Business Intelligence, włączając w to raportowanie, analizy danych, kokpity managerskie i integrację danych. Dzięki platformie Pentaho poszczególne komórki biznesu uzyskują dostęp do szerokiego wachlarza cennych informacji, począwszy od analiz sprzedaży i opłacalności poszczególnych klientów czy produktów, poprzez raportowanie na potrzeby HR i działów finansowych, aż do dostarczania informacji zbiorczych na potrzeby kierownictwa wyższego szczebla. ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE61 Rysunek 5.8: Okno instalatora SpagoBI 1.9.3. Widoczne dostępne komponenty Pentaho BI amerykańskiej firma Pentaho to najpopularniejsza na świecie korporacyjna platforma Business Intelligence rozwijany od 2004 roku, uznawana za numer 1 w Open Source BI. Pentaho BI dystrybuowana jest na licencji Mozilla Public License (MPL) Pentaho BI zostało pobrane już ponad 3 miliony razy. Popularności dowodzi także globalna społeczność oraz fakt jej wdrożenia w profesjonalnych i znanych firmach. Pentaho zapewnia wsparcie, serwisowanie i subskrypcję za roczną opłatą. Pentaho dystrybuowane jest jako Suite lecz można instalować każdy z projektów z osobna, wybiórczo. Poniżej kilka z komercyjnych organizacji korzystających z Pentaho: - Sun Microsystems - DivX - Motorola - iStockphoto - BNSF Logistics - Boyne Resorts - Close Premium Finance U.K - Lifetime Networks - Loma Linda University Health Care - MySQL AB - Orbitz Travel Services ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE62 Rysunek 5.9: Architektura Pentaho BI Quartet Financial Systems Spidex Software Terra Industries U.S. Naval Air Systems Command Uniloc USA Unionfidi S.C. University of Montreal Registrar Bureau ZipRealty Pentaho BI Suite jest platformą o szerokiej gamie funkcjonalności: * Raportowanie (Pentaho Reporting) - może zadowolić użytkowników biznesowym w bardzo szerokim zakresie potrzeb raportowania. Raportowanie Pentaho umożliwia generowanie raportów z systemu harmonogramu zadań oraz na żądanie - ad-hoc reporting. Raporty mogą być publikowane w popularnych formatach, takich jak plik tekstowy (TXT), PDF, MS Excel (XLS), HTML. Raportowanie w platformie Pentaho jest oparte na projekcie JFreeReport. Pentaho Reporting elastyczne tworzenie raportów, w tym raportów adhoc. * Analizy danych (Mondrian - Pentaho Analysis) - Platforma Pentaho dostarcza zaawansowane możliwości analizy danych, włączając widoki tabel przestawnych (JPivot), zaawansowane wyświetlanie danych (z wyko- ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE63 Rysunek 5.10: Pentaho Reporting rzystaniem SVG lub Flash), zintegrowane panele managerskie, data mining, integracja z portalem web oraz z przepływem dokumentów (workflow). Dodatkowo, Pentaho Spreadsheet Services pozwala użytkownikom na przeglądanie, drążenie, przestawianie i tworzenie wykresów dla danych w Microsoft Excel. Moduł Analysis Services jest oparty na open-sourcowym serwerze OLAP Mondrian. Rysunek 5.11: Mondrian - Pentaho Analysis Mondrian to: • najpopularniejszy na świecie open source projekt OLAP, • projekt rozpoczęty w 2001 roku, • globalna społeczność, • najszybciej rozwijający się open source’owy silnik OLAP. * Kokpity menedżerskie (Dashboards) - wszystkie komponenty z modułów raportowania i analiz mogą zostać wyświetlone w kokpicie menedżerskim Pentaho (Pentaho dashboards). W łatwy sposób można używać widgetów, czyli kontrolek używanych do wyświetlania informacji na stronie w postaci różnego typu graficznych przycisków, potencjometrów i wyświetlaczy. Mogą one być osadzone w aplikacjach WWW lub zintegrowane ze stronami w formacie zgodnym z normami JSP lub JSR-168. ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE64 * Data Mining - zawiera kolekcję algorytmów do data mining Weka. Algorytmy te w połączeniu z technologią OLAP dostarczają inteligentnej informacji dla użytkowników. Narzędzia data mining służą analizie danych historycznych w celu tworzenia i wspierania modeli prognostycznych. Petaho jest sponsorem projektu Weka - narzędzi Open Source do eksploracji danych. Pentaho Data Integration (PDI) W skład platformy Business Intelligence Pentaho wchodzi również narzędzie Pentaho Data Integration (PDI),(wcześniej nazywane Kettle - środowisko Kettle (K.E.T.T.L.E to skrót od Kettle ETTL Environment) zostało przejęte przez grupę Pentaho i oficjalnie zmieniło nazwę na Pentaho Data Integration. Jednak nazwy Kettle i Pentaho Data Integration w dalszym ciągu funkcjonują zamiennie.) będące najpopularniejszym (15 000 pobrań/miesiąc) projektem Open Source do integracji danych. Rysunek 5.12: Pentaho Data Integration PDI jest zostawem narzędzi i aplikacji pozwalających na przetwarzanie i strojenie danych pochodzących z różnych źródeł. PDI jest wiodącym rozwiązaniem open source na rynku narzędzi wspierających proces ETL. Kettle jest klasyfikowany jako narzędzie ETL i zawier wszystkie charakterystyczne cechy narzędzia ETL (model klasyczny - czyli extrakcja, transformacja, ładowanie), jednak koncepcja procesu została w tym przypadku nieznacznie zmodyfikowana, jako że Kettle jest zbudowany z czterech komponentów, tworząc skrót ETTL: - Extraction - ekstrakcja danych z źródłowych baz danych - Transport danych - Transformacja danych - Loading - ładowanie danych do hurtowni danych Głównymi komponentami Pentaho Data Integration są: ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE65 Spoon - (z ang. łyżka) to narzędzie graficzne pozwalające na bardzo łatwe tworzenie transformacji ETTL. Narzędzie to dostarcza typowych funkcji modelowania przepływu danych, takich jak odczyt, walidacja, strojenie, transformacja, zapis i wspiera komunikację z szeroką gamą baz danych. Transformacje stworzone w narzędziu Spoon mogą być uruchamiane przez komponenty Pan oraz Kitchen. Pan - (z ang. rondel) jest narzędziem służącym do uruchamiania transformacji danych zaprojektowanych w Spoon i zapisanych w repozytorium lub w pliku XML. Chef - (z ang. szef kuchni) narzędzie służące do tworzenia tzw. jobów, które odpowiada za automatyzację procesu aktualizacji docelowej bazy danych Kitchen - (z ang. kuchnia) aplikacja umożliwiająca uruchamianie jobów w tzw. trybie batch. Zwykle joby uruchamiane są według ustalonego harmonogramu. Poniżej znajduje się lista obecnie wspieranych baz danych przez PDI: - Każde poprawnie skonfigurowane źródło ODBC w Windows Oracle MySQL AS/400 MS Access MS SQL Server IBM DB2 PostgreSQL Intersystems Cach´ e Informix Sybase dBase Firebird SQL MaxDB (SAP DB) Hypersonic CA Ingress SAP R/3 System (z wykorzystaniem plugina ProSAPCONN) - Zalety Pentaho Data Integration: - ”mówisz CO zrobic a nie JAK zrobić”, - oparte na metadanych, - tworzenie złożonych trasformacji bez konieczności zero kodu, ROZDZIAŁ 5. ISTNIEJĄCE ROZWIĄZANIA BUSINESS INTELLIGENCE66 - graficzne środowisko „przeciągnij-upuść” do tworzenia transformacji danych i jobów, - 100- rozszerzalna architektura, - łatwe tworzenie plug-in’ów, połaczeń klienta , - polaczenie z SAP mozliwe, - oparte o repozytorium, - wszystkie cechy ETL, - ponad 70 wbudowanych obiektów mapowania , - wsparcie dla wszystkich popularnych żródeł danych w tym wiodących RDBMS i różnych formatów plików, - zaawansowane wsparcie dla hurtowni danych dla Junk i Slowly Changing Dimensions, - Integracja z platformą Pentaho Open BI, - harmonogramowanie job’ów i transformacji. Rozdział 6 Korzyści z wdrażania technologii Business Intelligence Za tworzeniem hurtowni danych stoją przede wszystkim zyski, jednak jak pokazuje praktyka, nie wszystkie projekty hurtowni danych kończą się sukcesem. Na świecie miało miejsce kilka spektakularnych niepowodzeń, co sprawiło, że wokół hurtowni pojawiła się aura przedsięwzięcia ryzykownego, które w razie powodzenia daje duże zyski, ale też łatwiej niż w przypadku innych technologii informatycznych o porażkę. Większość niepowodzeń wynika zresztą stąd, że zaprojektowany system nie spełnia oczekiwań użytkowników końcowych. Dlatego trzeba bardzo dokładnie analizować ich potrzeby. W takim przypadku nie wystarczają same umiejętności informatyczne, potrzebna jest również wiedza biznesowa z zakresu, którego dotyczyć będzie hurtownia danych. Niezrozumienie procesów biznesowych, strategii i celów gospodarczych firmy powoduje, że powstaje system informatyczny, który mimo działania, nie spełnia oczekiwań. Natomiast udany zwrot z inwestycji kształtuje się zazwyczaj w granicach 300-500 procent. Przeglądając zasoby internetowe w poszukiwaniu informacji o korzyściach z wdrażania technologii Business Intelligence można śmiało stwierdzić, iż nie istnieją wdrożenia systemów BI, przy których nie możnaby podać konkretnych efektów finansowych. Technologia BI pozwala na stwierdzenie, które działy przedsiębiorstwa są rentowne i zaoszczędzenie nawet kilka milionów złotych poprzez zamknięcie oddziałów, które przynoszą straty oraz umożliwia przewidywanie zysków z nowo wprowadzanych produktów. Na przykład firma AVANS poprzez możliwość generowania różnych rozbudowanych analiz swoich dostawców, uzyskała od nich ochronę cen na zakupiony sprzęt, pozostający w magazynach w sy67 ROZDZIAŁ 6. KORZYŚCI Z WDRAŻANIA TECHNOLOGII BUSINESS INTELLIGENCE68 tuacji, gdy producent obniży na ceny. W ten sposób firma nie ponosi strat na sprzęcie, który długo się sprzedaje. Przy skali działalności firmy oznacza to roczne oszczędności rzędu setek tysięcy złotych. System wraz z wdrożeniem kosztował około 100.000 zł. Implementacja hurtowni danych zazwyczaj przynosi organizacji znaczące korzyści m.in.: • Wysokie dochody z inwestycji wdrożenia hurtowni danych. Koszty wdrożenie mieszczą się miedzy 50 tysięcy a ponad 10 milionów funtów z powodu różnorodności dostępnych rozwiązań technologicznych. Średnie trzyletnie dochody wg. badań IDC wykazały, ze średnie trzyletnie dochody z inwestycji wynoszą 401%, 90% badanych firm osiągnęło dochody powyżej 40% połowa firm osiągnęła dochody powyżej 160% a 25% przewyższające 600% wartości inwestycji. • Uzyskanie przewagi nad konkurencją • Zwiększenie wydajności korporacyjnych decydentów; dzięki przekształceniu danych w znaczące informacje pozwalają kadrze kierowniczej na wykonywanie zaawansowanych merytorycznie, dokładnych i spójnych analiz. Poniżej przedstawiono potencjalne korzyści z wdrożenia aplikacji OLAP: - Zwiększenie produktywności użytkowników biznesowych - efektywniejsze podejmowanie decyzji; - Samowystarczalność użytkowników, jeśli chodzi o dokonywanie zmian w schematach i budowanie indywidualnych modeli; - Zachowanie kontroli organizacji nad integralnością danych korporacyjnych; - Redukcję obróbki zapytań i ruchu sieciowego w systemach OLTP lub w hurtowniach danych; - Zwiększenie potencjalnego dochodu oraz rentowności poprzez umożliwienie szybszych reakcji organizacji na potrzeby rynku. Część II Implemetacja praktyczna 69 Rozdział 7 Przygotowania do wdrożenia W niniejszej cześci pracy przedstawiony został proces wdrożenia przykładowego, choć niekompletnego środowiska Business Intelligence przy pomocy darmowego produktu - platformy Pentaho BI najczęściej wybieranej i dostępnej do zastosowań komercyjnych na licencji Open Source. Funkcjonalności wykorzystane w niniejszej pracy stanowią jedynie część wszystkich dostępnych możliwości rozbudowanej platformy Pentaho BI. Skorzystano z następujących aplikacji wchodzących w skład Pentaho Open BI Suite: - Spoon - Data Integration (Kettle), - Schema Workbech, - Report Design Wizard, oraz z baz danych: - PostgreSQL, - Microsoft Access. 7.1 Baza operacyjna i hurtownia danych Aby wdrożyć System BI należy posiadać źródła, z których można będzie pobierać dane do hurtowni. Zatem rozpoczęto od wdrożenia przykładowej operacyjnej bazy danych do obsługi sprzedaży w sklepie przy pomocy aplikacji Microsoft Access. Wdrożenie przykładowej bazy źródłowej polegało na zaprojektowaniu i utworzeniu relacyjnej bazy danych Microsoft Access. Do utworzonej bazy danych wprowadzono przykładowe, fikcyjne dane służące jako dane źródłowe dla hurtowni danych. Następnie przygotowano projekt hurtowni danych jako relacyjnej bazy danych w schemacie gwiazdy. 70 ROZDZIAŁ 7. PRZYGOTOWANIA DO WDROŻENIA 71 Rysunek 7.1: Schemat gotowej bazy operacyjnej do obsługi sprzedaży. Rysunek 7.2: Diagram encji hurtowni danych. Utworzono bazę danych oraz niezbędne, lecz zupełnie puste tabele na serwerze PostgreSQL 8.3. W późniejszym etapie projektu wspomniane tabele zostaną wypełnione kolumnami i danymi przy pomocy aplikacji Spoon. Rozdział 8 Wdrożenie platformy Pentaho BI Poniżej przedstawiono minimalne rekomendowane wymagania instalacyjne pre-konfigurowanej instalacji Pentaho Open BI Suite 1.7: * 300 MB wolnej przestrzeni dyskowej * CPU: Pentium dual-core * RAM: 2 GB 8.1 Instalacja Pentaho BI Rozpoczęto od zainstalowania Pentaho Open BI Suite 1.7. Wykorzystano gotowy instaler - plik o nazwie: pentaho-1.7GA-windows-opensource-installer.exe w wersji GA czyli Generally Available i zawiera wszystkie komponenty Pentaho BI. Pre-konfigurowana instalacja jest kompletną instalacją platformy wraz ze wszystkimi modułami, komponentami Pentaho BI. Zawiera pre-konfigurowany serwer aplikacyjny JBoss oraz bazę danych MySQL, oraz w pełni funkcjonalne przykłady wraz z danymi. Najlepiej jeszcze przed przystąpieniem do instalacji skonfigurować zmienną środowiskową JAVA_HOME, aby wskazywała na lokalizację zainstalowanego środowiska uruchomieniowego Javy (Java Runtime Environment JRE). Jest to niezbędne do prawidłowego działania aplikacji wchodzących w skład Pentaho BI. Proces instalacji przebiega w sposób tradycyjny, dobrze znany wszystkim użytkownikom i niezwykle prosty, należy wybrać odpowiednie, potrzebne komponenty. Dostępne są 72 ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 73 - Report Designer, - Metadata Editor, - Design Studio, - Data Integration, - Schema Workbench, - Open BI Server. Następnie należy wybrać opcję instalacji Easy ponieważ Advanced nie jest dostępna. Opcja Easy instaluje aplikacje uruchomianą na serwerze aplikacyjnym dostarczanym wraz z Pentaho BI Open Suite - JBoss oraz instaluje bazę danych MySQL jako repozytorium dla aplikacji. Kolejnym krokiem jest wybranie konfiguracji bazy danych jakiej chcemy używać czyli ”instaluj serwer bazy danych MySQL 5.0 i używaj go do repozytorium ”. Należy wprowadzić nazwę użytkownika oraz hasło dla bazy danych, ustalic czy chcemy zainstalować MySQL oraz JBoss jako usługi by uruchamiane były automatycznie podczas restartu systemu. Tworzenie baz danych repozytoriów: Solution Repository Database, Scheduler Repository Database, Sampledata Repository Database. Kolejnych krokiem jest konfiguracja bazy danych: należy podać nazwę użytkownika i hasło dostępu do powyżej wspomnianych baz danych. Na koniec rejestracja oraz możliwość instalacji Update Checker. Oto Pentaho BI po uruchomieniu: Rysunek 8.1: Aplikacja sieciowa Pentaho ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 74 8.2 Spoon - Pentaho Data Integration (Kettle) Aplikacja Spoon kryje się pod nazwą Data Integration w menu Start. Po uruchomieniu się Spoon wybierano No Repository, ponieważ wykonane transformacje i job’y zapisywano do plików odpowiednio z rozszerzeniami .ktr i .kjb. Spoon jest aplikacją umożliwiającą graficzne projektowanie zatem tworzenie transformacji i job’ów polega na przeciąganiu z palety znajdującej się po lewej stronie ekranu komponentu na obszar roboczy (graphical view) i łączeniu komponentów przeciągając prawy przycisk myszy od jednego do drugiego komponentu, tworzeniu w ten sposob strzałki reprezentującej przepływ danych. 8.2.1 Transformations Transformacje Spoon rozwiązują kwestię utworzenia niezbędnych kolumn oraz zasilania hurtowni danych informacjami z bazy operacyjnej MS Access „Sklep”. Wszelkie eksporty tabel z bazy operacyjnej MS Access do plików Excel uwarunkowane są błędami w ich odczycie przez Spoon. Sprzedaż - tabela faktów 8.2 Rysunek 8.2: Ukończona transformacja ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 75 Obiekt Access Input pobiera zawartość tabeli z pliku MS Access, w tym wypadku tabeli sprzedaz z pliku sklep.mbd. Excel Input pobiera zawartość pliku w formacie aplikacji Excel - tabela produkt.xls będącego wyeksportowną tabelą produkt z bazy Sklep. Select values to obiekt za pomocą, którego możliwy jest wybór potrzebnych pól ze strumienia wejściowego, usunięcie zbędnych by nie uczestniczyły w procesie przepływu danych oraz zmiana ich nazw i właściwości. Join Rows (Cartesian product) - wykonuje złączenie (iloczyn kartezjański) wierszy pojawiających się na wejściu komponentu; możliwe jest ustanowienie warunku tego złączenia. Insert / Update - jeśli wiersz nieistnieje wykonywana jest operacja Insert tworząca go w przeciwnym wypadku jeśli istniejące w tabeli wyjściowej (w hurtowni) wiersze różnią się wykonuje Update, natomiast jeśli wiersze nie różnią się nie są podejmowane żadne działania. Złączenie tabel z warunkiem: identyfikatory produktu z tabeli sprzedaz oraz identyfikator produktu z tabeli produkt bazy operacyjnej muszą być identyczne.8.3 Rysunek 8.3: Join Rows (cartesian product) - złączenie tabel Do proponowanych przez Spoon poleceń SQL koniecznych do wykonania dopisane zostały polecenia tworzące kolumnę id sprzedaz typu bigserial i klucz główny pk sprzedaz na tej właśnie kolumnie. Utworzony zostanie indeks.8.4 Wypełnienie tabeli danymi nastąpi po uruchomieniu poleceniem Run transformacji i jej poprawnym wykonaniu się.8.5 ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 76 Rysunek 8.4: Polecenia SQL konieczne do wykonania. Rysunek 8.5: Tabela faktów zasilona danymi. PostgeSQL. Klient - tabela wymiaru 8.6 Komponent Modified Java Script Value pozwala na pisanie własnych skryptów języka Java Script, pobieranie pól jako obiektów ze strumienia wejściowego i przekazywanie utworzonych zmiennych na wyjście komponentu. Poniżej listing napisanego przeze mnie skryptu do łączenia imienia i nazwiska klienta w jedną zmienną (zmienna razem typu String), ponieważ docelowo w jednej kolumnie tabeli powinno się znajdować imię i nazwisko. var razem=imie.getString()+" "+nazwisko.getString(); Następnie został utworzony iloczyn kartezjański wybranych wartości z tabel grupa i osoba z warunkiem równości identyfikatora grupy z tabeli grupa z identyfikatorem grupy z tabeli osoba. ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 77 Rysunek 8.6: Ukończona transformacja klient Kolejny krok to zmiana nazw kolumn w zakładce Meta-data w następujący sposób: pole razem na Imie Nazwisko, pole grupa na grupa segment, pole firma Firma Organizacja. Wyjściowe pola staną się kolumnami w tabeli klient hurtowni danych. Do proponowanych przez Spoon poleceń SQL koniecznych do wykonania dopisana została klucz główny pk klient na kolumnie id klienta. Utworzony zostanie również indeks poprawiający wydajność, przyspieszający wyszukiwanie. Po wykonaniu poleceń SQL przez Spoon zostały utworzone zadane kolumny w tabeli klient hurtowni danych. Wypełnienie tabeli danymi nastąpi po uruchomieniu poleceniem Run transformacji i jej poprawnym wykonaniu się.8.7 Rysunek 8.7: Tabela klient zasilona danymi. PostgeSQL. ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI Czas - tabela wymiaru 8.8 78 Rysunek 8.8: Ukończona transformacja czas Za pomocą Access Input wczytano kolumny tabeli sprzedaz. Ponieważ w bazie operacyjnej sklep data sprzedazy przechowywana była jako String wykorzystastano obiekt Select values i w zakładce Meta-data jego właściwości dokonano konwersji daty sprzedaży na typ Date. Modified Java Script Value Poniżej znajduje się listing napisanego przeze mnie skryptu obliczającego kwartał, tydzień w roku, oraz przekazującego na wyjście wartości jako zmienne wraz z obiektem, który posłuży w kolejnym kroku transformacji do wyznaczenia dnia tygodnia. var q = new Date(); q=data_sprzedazy.getDate() Alert(quarter(q)); var kwartal=quarter(q); var t = new Date(); t=data_sprzedazy.getDate() Alert(week(t)); var tydzien=week(t); ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 79 Docelowo w tabeli wymiaru czas znajdować się będą kolumny przechowujące dzień, miesiąc, rok, numer kwartału, numer tygodnia w roku, dzień tygodnia. Split Fields - rozdziela pojedyncze pole na kilka osobnych pól. Korzystając ze Split Field i obiektu q utworzonego w poprzednim kroku uzyskano dzien tygodnia. Select values 2 - konwersja data sprzedazy na String -wymóg kroku następnego. W kolejnym Split Field z pola data sprzedazy pozyskano trzy osobne zmienne zawierające odpowiednio rok, miesiąc, dzień. Select values 3 - kolejny krok wyboru pól do dalszego przetwarzania i zmiany ich właściwości. Następuje zmiana nazwy pola id sprzedazy na id czas. Identyfikatory sprzedazy staną się kluczem głównym tabeli wymiaru czas. W ten sposób zostanie zachowana poprawna relacja pomiędzy tabelami sprzedaz i czas w hurtowni danych. Ustalono także typ Integer dla wszystkich pól i odpowiednie ich długości dla poszczególnych z nich.8.9 Rysunek 8.9: Zmiana nazw pól, typów i długości pól. Ostatni etap to utworzenie komponentu wykonującego operacje wprowadzania i aktualizowania danych wymiaru czas w hurtowni danych. Do proponowanych przez Spoon poleceń SQL koniecznych do wykonania dopisano polecenie tworzące klucz główny pk czas na kolumnie id czas. Utworzony zostanie także indeks. Tabela czas zasilona danymi, patrz:8.10 Lokacja - tabela wymiaru 8.11 ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 80 Rysunek 8.10: Tabela czas zasilona danymi. PostgeSQL. Rysunek 8.11: Ukończona transformacja lokacja Utworzonono trzy obiekty Access Input do wczytania tabel: miasto, region, kraj z bazy operacyjnej oraz jeden obiekt Excel Input do wczytania zawartości tabeli sklep. Dokonano zmiany nazw pól, w celu zapobieżenia ich pokrywaniu się z nazwami kolumn z pozostałych tabel.8.12 Join Rows (cartesian product) - obiekt wykonujący zadany iloczyn kartezjański.8.13 Operacje Insert Update na tabeli lokacja w hurtowni. Do proponowanych przez Spoon poleceń SQL dopisano polecenie tworzące klucz główny pk lokacja na kolumnie id sklep. Podobnie jak, w każdym z przypadków utworzony zostanie indeks.8.14 Tabela lokacja zasilona danymi, patrz:8.15 Produkt - tabela wymiaru Access Input - pobiera tabele kategoria i producent; Excel Input tabelę produkt 8.16 ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 81 Rysunek 8.12: Zmiana nazw pól. Rysunek 8.13: Join Rows (cartesian product) - złączenie tabel Select values - zmiana nazw pól, aby nie pokrywały się w kolejnym kroku transformacji. 8.17 Join Rows (cartesian product) realizuje złączenie tabel produkt i kategoria oraz produkt i producent.?? Operacje Insert / Update na tabeli wymiaru produkt w hurtowni danych. Do proponowanych przez Spoon poleceń SQL koniecznych do wykonania dopisano polecenie tworzące klucz główny pk produkt na kolumnie id produktu. Tabela produkt zasilona danymi - ?? ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 82 Rysunek 8.14: Polecenia SQL konieczne do wykonania na tabeli lokacja Rysunek 8.15: Tabela lokacja zasilona danymi. PostgeSQL. 8.2.2 Jobs Job’y umożliwiają harmonogramowanie wykonywania uprzednio utworzonych transformacji.8.20 Utworzony job wykonuje utworzone wcześniej transformacje sprawdzając czy tabela faktów oraz tabele wymiarów istnieją w hurtowni danych. Jeśli danej tabeli brakuje wykonywanie job’a jest przerywane i wyświetlane jest okienko z komunikatem. Po pomyślnym zakończeniu procesu wysyłany jest e-mail z określonymi podaczas konfiguracji komponentu informacjami. 8.3 Tworzenie analiz - Mondrian Schema Workbench W niniejszym podrozdziale zostanie opisany proces tworzenia analiz danych posiadanej hurtowni danych. Pentaho Analysis jest oparte o popularny serwer Mondrian OLAP, będący częścią architektury Pentaho BI Platform. Mondrian przetwarza zapytania MDX ze schematów używających baz ROLAP (Relational OLAP). Pliki sche- ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 83 Rysunek 8.16: Ukończona transformacja produkt Rysunek 8.17: Zmiana nazw pól matów są plikami XML, modelami matadanych tworzonymi w specyficznej strukturze używanej przez Mondrian i mogą być rozpatrywane jako kostki użytkujące istniejące tabele faktów i wymiarów znajdujące się w RDBMS. Tworzenie analiz Pentaho nie wymaga budowania fizycznej kostki a jedynie utworzenia modelu matadanych. Struktura metadanych XML może być tworzona w edytorze tekstowym, w Pentaho Cube Designer lub jak w niniejszej pracy w Schema Workbench. Mondrian Schema Workbench pozwala na wizualne tworzenie i testowanie schematów i kostek OLAP. Techniczne wymagania Schema Workbench: * Java 1.5 * sterownik JDBC dla bazy danych hurtowni umieszczony w folderze w miejscu instalacji Schema Workbench na dysku: ../pentaho/workbench/drivers. 5 podstawowych kroków do utworzenia Pentaho Analysis View (widoku analiz): 1. Skonfigurowanie źródła RDBMS JNDI odpowiednio do używanego ser- ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 84 Rysunek 8.18: Join Rows (cartesian product) - złączenie tabel Rysunek 8.19: Tabela produkt zasilona danymi. PostgeSQL. wera aplikacyjnego, aby platforma Pentaho BI miała dostęp do danych 2. Utworzenie modelu Pentaho Analysis Schema przy pomocy Schema Workbench 3. Wdrożenie modelu Pentaho Analysis Schema na serwer Pentaho BI 4. Utworzenie Pentaho Analysis View Action Sequence 5. Wykonanie, wywołanie Pentaho Analysis View z poziomu przeglądarki internetowej. 8.3.1 Tworzenie prostego schematu Pierwszym krokiem jest umieszczenie sterownika JDBC dla bazy danych hurtown w folderze, w miejscu instalacji Schema Workbench na dysku: .../pentaho/workbench/drivers. Należy właściwie skonfigurować Mondrian Preferences (Tools > Preferences),by aplikacja mogła poprawnie połączyć się hurtownią danych. ?? ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 85 Rysunek 8.20: Okno Job Scheduling. Definiowanie częstotliwości wykonywania job’u - codziennie o godzinie 23.00 Typy danych w schemacie muszą być zgodne z typami w RDBMS. Tworzenie schematu i kostki: Rozpoczęto od utworzenia nowego schematu(File > New > Schema); w polu name w prawej części okna wpisano: sprzedaz czas; Następnie prawym przyciskiem myszy należy wybrano (Schema > Add Cube), aby dodać i nazwać kostkę (name: Kostka). Wybrano z listy schema: public oraz tablę faktów, w tym wypadku sprzedaz. Klikając prawym przyciskiem myszy nazwę kostki wybrano Add Measure, aby dodać miarę. Następnie nazwano miarę: Srednia wartosc sprzedazy (nazwa ta pojawia się w gotowym widoku analiz), wybrano funkję agregacji (w tym konkretnym przypadku wartość średnią), kolumnę i typ danych. Procedury powyżcze powtórzono by dodać również miarę: Ilosc sprzedanych produktow z funkcją agregacji count. Aby dodać wymiar prawym przyciskiem myszy wybrano nazwę kostki i Add Dimension w polu name wpisano Sklepy; wybrano właściwy klucz obcy: id lokacja i typ wymiaru taki jak Standard Dimension (Time Dimension dla wymiaru Czas). Do nowo utworzonego wymiaru dodano hierarchę wybierając Add Hierarchy; nazwano hierarchię, zdefiniowano primaryKeyTable oraz primaryKey; Aby dołączyć poziom wybrano Add Level ; zdefiniowano nazwę, tabelę i kolumnę, określono levelType dla wymiarów czasu; Powtarzając odpowiednie kroki dodano pozostałe wymiary (Produkty i ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 86 Rysunek 8.21: Gotowy job Rysunek 8.22: Czas) oraz poziomy uwzględniając różnice w konfiguracji. Ukończony schemat 8.3.2 Publikowanie Analysis Schema na platformie Pentaho BI Przygotowany należy plik zapisano (File > Save) w repozytorium Pentaho Solution, w folderze ...\pentaho\bi-server\pentaho-solutions\samples\analysis w formacie *.mondrian.xml, ¡nazwapliku¿.mondrian.xml¿, np.: schemat.mondrian.xml 8.4 Konfiguracja źródeł danych JNDI Tworząc action sequence rozszerzamy platformę Pentaho BI. Zazwyczaj action sequence wymaga dostępu do relacyjnej bazy danych. Jeśli platforma Pentaho BI została wdrożona na serwerze aplikacyjnym JBoss, wymagane ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 87 Rysunek 8.23: Ukończony schemat jest popełnienie pewnych wymaganych kroków, aby poprawnie skonfigurować nazwę JNDI dla źródła danych. 8.4.1 Instalacja sterownika bazy danych Pierwszym krokiem jest pozyskanie sterownika bazy danych i umieszcenie go w następującej lokalizacji: \pentaho\bi-server\jboss\server\default\lib 8.4.2 Konfiguracja JNDI Należało skonfigurować serwer JBoss oraz nazwę JNDI, aby wskazywała na źródło danych. Trzeba stworzy plik dla Jboss, aby rozpoznawał źródło danych JNDI. Osiągamy to przez stworzenie pliku definicji źródła danych - pliku XML, którego nazwa zkłąda się z nazwy właściwej po której następuje ”-ds.xml”, ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 88 na przykład my-datasource-name-ds.xml. W lokalizacji \pentaho\bi-server\jboss\server\default\deploy utworzono plik hurtownia-ds.xml o następującej zawartości: <?xml version="1.0" encoding="UTF-8"?> <datasources> <local-tx-datasource> <jndi-name>hurtownia</jndi-name> <connection-url>jdbc:postgresql://localhost:5432/hurtownia_danych</connection-url <driver-class>org.postgresql.Driver</driver-class> <user-name>admin\_hd</user-name> <password>hd</password> </local-tx-datasource> </datasources> Ostatnim etapem jest modyfikacja plików konfiguracyjnych aplikacji web’owej, by zawierały informacje o połączeniu z bazą hurtowni danych. W pliku web.xml znajdującym się w lokalizacji <pci-home>\pentaho\bi-server\jboss\serv wewnątrz tagów <webapp></webapp>, po ostatnim wystąpieniu tagu </resource-ref>, należało dopisać (<res-ref-name\> określa JNDI): <resource-ref> <description>hurtownia</description> <res-ref-name>jdbc/hurtownia</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> W pliku jboss-web.xml znajdującym się w lokalizacji <pci-home>\pentaho\bi-server\jboss\ wewnątrz tagów <jboss-web></jboss-web>, po ostatnim wystąpieniu tagu </resource-ref> ,należało dopisać (<res-ref-name\> określa JNDI): <resource-ref> <res-ref-name>jdbc/hurtownia</res-ref-name> <res-type>javax.sql.DataSource</res-type> <jndi-name>java:/hurtownia</jndi-name> </resource-ref> 8.5 Tworzenie nowego widoku analiz (Analysis View) Z menu portalu Pentaho należy wybrać Go > New Analysis View. ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 89 Okno dialogowe New Analysis View tworzy sekwencję akcji (action sequence) - plik w formacie .xaction, zawierający widok JPivot używający upszednio zdefiniowanego schematu Mondrian. Lista dostępnych schematów w oknie New Analysis View jest pozyskiwana z pliku /pentaho/bi-server/pentaho-solutions/system/olap/datasources.xml. Plik ten zawiera listę źródeł danych. ?? Ażeby schemat pojawił w portalu Pentaho w New Analysis View należy zatem dopisać do wspomnianego pliku: <DataSource> <DataSourceName>Provider=Mondrian;DataSource=hurtownia</DataSourceName> <DataSourceDescription>Pentaho hurtownia danych</DataSourceDescription> <URL>http://localhost:8080/pentaho/Xmla?userid=joe&amp;password=password</URL> <DataSourceInfo>Provider=mondrian;DataSource=hurtownia</DataSourceInfo> <ProviderName>PentahoXMLA</ProviderName> <ProviderType>MDP</ProviderType> <AuthenticationMode>Unauthenticated</AuthenticationMode> <Catalogs> <Catalog name="Hurtownia danych"> <Definition>solution:samples/analysis/schemat.mondrian.xml</Definition> </Catalog> </Catalogs> </DataSource> W oknie dialogowym New Analysis View wpisano tytuł i opis dla action sequence (.xaction). W polu File Name, nazwę pliku .xaction i lokację w Solution Repository. Wybrano schemat (Schema) i kostkę (Cube).8.24 Po kliknięciu Create View utworzony zostanie widok anlizy (Analysis View). W oknie przeglądarki można podziwiać efekt pracy. Wszystkie utworzone analizy są dostępne w repozytorium Pentaho Solution Browser/Samples/Analysis Examples. 8.6 Tworzenie raportów - Pentaho Report Design Wizard Pentaho Report Design Wizard nie jest częscią Pentaho Open BI Suite. Został zainstalowany niezależnie. Aplikację w postaci archiwum pentaho-report-design-wizard-1.7.0.GA pobrano z portalu SourceForge.net. ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 90 Rysunek 8.24: Tworzenie nowego widoku analiz Pentaho Pentaho Report Design Wizard do poprawnego łączenia się z hurtownią danych wymaga sterownika bazy danych. Należy zatem do folderu ...\pentaho\bi-server\jboss skopiować sterownik bazy danych hurtowni PostgreSQL (postgresql-8.2-506.jdbc3.jar). Aby Pentaho Report Design Wizard rozpoznawał źródło danych wymagane jest utworzenie pliku definiującego to źródło. Wspomniny plik został utworzony podczas konfiguracji źródeł danych JNDI w rozdziale 8.4 i nazwany hurtownia-ds.xml. Wymagana jest również modyfikacja plików konfiguracyjnych aplikacji Pentaho, mianowicie web.xml i boss-web.xml.co także zostało opisane w rozdziale 8.4. Wybrano ”JNDI” jako typ połączenia; w oknie Add JNDI Connection skonfigurowano i przetestowano połączenie z hurtownią danych. 8.278.28 Zdeefiniowano zapytanie, według którego zostanie utworzony raport.8.29 W trzecim etapie kreowania raportu określono, które z dostępnych pól i w jaki sposób zorganizowane pojawią się w documencie raportu.8.30 ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 91 W ostatnim etapie tworzenia raportu określono styl, wielkość czcionki, styl nagłówka, stopki inne opcje formatowania documentu. Skorzystano z funkcji AVG, aby określić średnią wartość sprzedaży produktu.8.31 W oknie Publish Report to Server wybrano Location.8.32 W folderze ......\pentaho\bi-server\pentaho-solutions\samples\reporting zostały zapisane 3 pliki: JFreeReport-prod lok.properties JFreeReport-prod lok.xaction JFreeReport-prod lok.xml Restart aplikacji Pentaho jest konieczny, aby w wygenerowany raport pojawił się w sekcji Solusions (Pentaho Solution Browser > Samples > Reporting Examples).?? Raport w formacie .pdf został wygenerowny po wybraniu przycisku Preview w oknie kreatora. ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 92 Rysunek 8.25: Utworzony widok analizy ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 93 Rysunek 8.26: Utworzony widok analizy ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 94 Rysunek 8.27: Kreator tworzenia raportów Rysunek 8.28: Add JNDI Connection ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 95 Rysunek 8.29: Zapytanie SQL Rysunek 8.30: Trzeci etap kreatora raportów ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 96 Rysunek 8.31: Czwarty, ostatni etap kreatora raportów Rysunek 8.32: Okno Publish Report to Server ROZDZIAŁ 8. WDROŻENIE PLATFORMY PENTAHO BI 97 Rysunek 8.33: Fragment raportu w formacie .pdf Bibliografia [CB04] Connolly Thomas, Begg Carolyn: Systemy baz danych: praktyczne metody projektowania, implementacji i zarządzania. Tom 2. Wydawnictwo RM,Warszawa 2004 [T03] Todman Chris: Projektowanie hurtowni danych. Zarządzanie kontaktami z klientami (CRM). Wydawnictwa Naukowo-Techniczne, Warszawa 2003 [M03] Marakas George M.: Modern Data Warehousing, Mining And Visualization. Prentice Hall, Pearson Education,Upper Saddle River NJ 2003 A [O07] Oetiker Tobias: Nie za krótkie wprowadzenie do systemu L TEX . 2007 A [O08] Oetiker Tobias: The Not So Short Introduction to L TEX . 2008 [ZPWI07] Zakrzewicz Maciej: Projektowanie systemów informatycznych. http://www.pwi.edu.pl. 2007 [SM02] Stones R., Matthew N.: Bazy danych i PostgreSQL. Od Podstaw. Wydawnictwo HELION. 2002 [WEN] en.wikipedia.org [WPL] pl.wikipedia.org [B08] Bizgres Group: www.bizgres.org. 2008 [DW4U08] http://www.datawarehouse4u.info. 2008 [L08] Levin J.: ETL Tools Comparison. 2008 www.pentaho.com\\docs\informatica pentaho etl tools comparison.pdf [WP07] http://wiki.pentaho.com, 2007 [C08] Comelius J.: Pentaho Dta Integration Overview, 2008, http://wiki.pentaho.com/display/EAI/Pentaho+Data+Integration+Recorded+Demos 98 BIBLIOGRAFIA 99 [C08] Comelius J.: Debugging a transformation, 2008, http://wiki.pentaho.com/display/EAI/Pentaho+Data+Integration+Recorded+Demos [C08] Comelius J.: Simple Spoon Transformation Screencast (Indonesian), 2008, http://wiki.pentaho.com/display/EAI/Pentaho+Data+Integration+Recorded+Demos [P08] Pentaho Corporation: http://www.pentaho.com, 2008 [S08] Engineering Ingegneria Informatica S.p.A., SpagoBI in a nutshell, http://www.spagobi.org/ecm/faces/public/guest/home/solutions/spagobi, 2007 [T08] Tarallo M., Evaluating Pentaho Analysis, http://wiki.pentaho.com, 2008 [M08] Mewshaw L., Designing http://wiki.pentaho.com, 2008 Reports With MySQL and JNDI,
Copyright © 2024 DOKUMEN.SITE Inc.