Podstawowa Wiedza o Systemach Wspomagania Podejmowania Decyzji

Przystępując do realizacji Systemu Wspomagania Podejmowania Decyzji (DSS) lub Systemu Informowania Kierownictwa (EIS), większość firm ma bardzo ogólne wyobrażenia, czego można oczekiwać od tego typu systemów i jakie problemy wystąpią przy ich realizacji.

Przystępując do realizacji Systemu Wspomagania Podejmowania Decyzji (DSS) lub Systemu Informowania Kierownictwa (EIS), większość firm ma bardzo ogólne wyobrażenia, czego można oczekiwać od tego typu systemów i jakie problemy wystąpią przy ich realizacji.

Efektem realizacji potrzeb informacyjnych kierownictwa firmy może być zarówno system klasy MIS, działający na podstawie relacyjnej znormalizowanej bazy danych, jak również DSS, korzystający z hurtowni danych. Podstawowe pytanie dotyczy kwestii, czy należy tworzyć hurtownię danych w przedsiębiorstwie? Jeśli tak, to w jaki sposób wybrać odpowiednie narzędzia? Ogłaszając procedurę przetargową, należy znać podstawy budowy systemów DSS/EIS i wiedzieć, czego powinno się oczekiwać od narzędzi do budowy hurtowni i analizy danych.

Systemy wspomagania zarządzania, a systemy wspomagania podejmowania decyzji

W każdym przedsiębiorstwie wykorzystującym system informatyczny do wspomagania zarządzania można wyróżnić Systemy Transakcyjne, Systemy Informacyjne (Management Information Systems - MIS), Systemy Wspomagające Podejmowanie Decyzji (Decision Support Systems - DSS) oraz Systemy Informowania Kierownictwa (Executive Information Systems - EIS) - (rys. 1).

Systemy Wspomagania Decyzji (DSS) i Systemy Informowania Kierownictwa (EIS) to systemy zapytań stosowane w celu uzyskania informacji niezbędnej do podjęcia decyzji gospodarczej (biznesowej). Systemy te przeznaczone są dla użytkowników, którzy nie - znając języków programowania - chcą z systemu uzyskać odpowiedzi, zarówno na pytania kompleksowe, jak i bardzo nietypowe (ad hoc), przedstawione w formacie łatwym do interpretacji (tabele, grafy, wykresy słupkowe). System DSS powinien wspomóc proces decyzyjny przez udzielenie odpowiedzi na najważniejsze dla rozwoju przedsiębiorstwa pytania. W przypadku zakładu wytwórczego będą to pytania o koszty wytwarzania różnych grup asortymentów, koszty pracy urządzeń lub wydziałów, rentowność prowadzonej działalności i zgodność wydatków z przyjętym budżetem.

Rys. 1

Dla udzielenia takich odpowiedzi system musi stosować różne techniki analitycznego przetwarzania danych OLAP (On Line Analytical Processing), np. wnioskowanie statystyczne, analiza regresji, analiza korelacji, analiza trendów, analiza wrażliwości, analiza typu "co jeśli" itp.

Przed wprowadzeniem Systemu DSS/EIS i hurtowni danych w przedsiębiorstwie należy odpowiedzieć na pytanie, dlaczego system taki jest potrzebny. Najczęstszym uzasadnieniem jego wprowadzenia są: konieczność poprawienia planowania, potrzeba zwiększenia kontroli nad procesem zarządzania, wymaganie obniżenia kosztów, zmiana sposobu zarządzania spowodowana sytuacją rynkową przedsiębiorstwa.

Wprowadzanie systemu DSS/EIS nie jest konieczne i nie jest uzasadnione, jeśli przedsiębiorstwo jest małej lub średniej wielkości, dane zawarte w systemach transakcyjnych są dobrej jakości i zawierają również dane archiwalne, raporty są dostarczane przez system transakcyjny na bieżąco i są wystarczające do podejmowania decyzji, nie ma potrzeby tworzenia nietypowych raportów ad hoc.

Wdrażanie systemów DSS wspiera działalność dużych przedsiębiorstw i firm o rozproszonej strukturze. Jest też okazją do uporządkowania ich struktury informatycznej.

Systemy DSS/EIS powinny być budowane na podstawie hurtowni danych.

Hurtownia danych (Data Ware- house) jest bazą służącą do odczytu, wykorzystywaną jako podstawa do procesu wspomagania podejmowania decyzji. Zasadniczą koncepcją hurtowni jest połączenie danych z różnych baz w jednej bazie.

1. Hurtownie danych - architektura

Rys. 2

Środowisko hurtowni danych jest z założenia nadmiarowe. Wiele systemów baz danych dla obsługi przedsiębiorstwa i systemów archiwalnych umieszcza dane we wspólnej centralnej hurtowni danych lub kilku hurtowniach tematycznych (data mart).

Poziom decyzji podejmowanych w systemach DSS i EIS zazwyczaj nie wymaga uaktualniania danych z dokładnością do minut. Dane w hurtowni danych nie są więc w pełni zsynchronizowane z danymi w systemach produkcji, sprzedaży i systemach marketingowych, lecz są uaktualniane w stałych odstępach czasu. Fakt ten pozwala na utrzymywanie stosunkowo dużej denormalizacji danych w hurtowni.

W prezentowanym modelu (rys. 2) występują:

heterogeniczne dane źródłowe

zbiory i programy ekstrakcji i konwersji danych

przetwarzanie analityczne (OLAP) danych zgromadzonych w środowisku DW

prezentacja danych na stacjach klientów.

Są to kluczowe elementy do tworzenia środowiska DW i systemów DSS.

Istotnymi cechami tego modelu są:

brak centralnej hurtowni danych

zorganizowanie środowiska Data Warehouse jako zbioru hurtowni tematycznych (DM)

wyróżnienie zbiorów pośredniczących w procesie ekstrakcji danych ze zbiorów źródłowych do hurtowni danych.

Metody i architektury analitycznego przetwarzania

Do bardziej efektywnego realizowania dostępu do danych i budowania systemów DSS potrzebne są zaawansowane metody przetwarzania danych. Najczęś-ciej wyróżnia się cztery obszary zastosowań systemów DSS - raportowanie, przetwarzanie OLAP, przetwarzanie predykcyjne oraz optymalizacja i modelowanie.

Stosowane są trzy koncepcje realizacji przetwarzania OLAP - MOLAP (na podstawie serwera bazy wielowymiarowej, ROLAP (relacyjnego serwera bazy danych, przez stosowanie schematów danych typu gwiazda lub płatek śniegu) oraz HOLAP (bazy hybrydowej relacyjno-macierzowej lub kilku baz różnego typu).

Jednym z podstawowych problemów przy wyborze środowiska do realizacji systemu DSS jest wybór właściwego dla danego zastosowania modelu przetwarzania analitycznego. Różnica dotyczy sposobu przygotowania danych.

Główne założenie architektury MOLAP dotyczy przechowywania danych w postaci wielowymiarowej, jeżeli mają być wielowymiarowo prezentowane. Informacje z różnych systemów operacyjnych są ładowane do wielowymiarowej bazy danych za pomocą serii procedur wsadowych. Po załadowaniu danych atomowych przeważnie wykonywana jest seria obliczeń wsadowych, agregujących dane w ortogonalnych wymiarach i wypełniających struktury tablicowe MDDB. Po wypełnieniu struktur bazy tworzone są indeksy w celu poprawienia wydajności zapytań. Proces ten nazywamy konsolidacją danych.

Dane zagregowane są wstępnie obliczane i przechowywane w bazie. Baza jest tak skonstruowana, by ułatwić prezentację danych przez wybór odpowiedniego przekroju przestrzeni danych.

Relacyjny OLAP do przeprowadzania analiz i wielowymiarowej prezentacji korzysta z danych przechowywanych w relacyjnej bazie danych o strukturze gwiazdy (Star) lub płatka śniegu (Snowflake).

Po zdefiniowaniu modelu hurtowni, dane z systemów przetwarzania transakcyjnego są ładowane do bazy danych. Jeżeli model danych tego wymaga, to wykonywane są procedury agregacji danych. Następnie, w celu zoptymalizowania czasu wykonywania zapytań, tworzone są indeksy. Użytkownik zleca wykonanie wielowymiarowych analiz motorowi ROLAP, który dynamicznie transformuje żądanie w plan wykonania zapytań SQL. Zapytania są przesyłane do bazy danych i przetworzone, zaś wielowymiarowy rezultat zostaje zwrócony użytkownikowi.

Rys. 3

Dane zagregowane mogą być zarówno przechowywane i wyszukiwane w bazie, jak i obliczane na żądanie. Jeśli dane w bazie są wstępnie przetworzone, przeliczone i przygotowane do prezentacji, to wydajność wyszukiwania i szybkość reakcji na zapytania użytkownika jest maksymalna, natomiast przetwarzanie wsadowe przy okresowym wprowadzaniu nowych danych do bazy jest czasochłonne i wymaga pełnego zaangażowania zasobów komputera. Takie systemy określa się mianem systemów o wysokim stopniu konsolidacji danych (stopień konsolidacji 80-100%). Jeśli chcemy minimalizować czas ładowania danych, natomiast czas przetwarzania analitycznego nie jest krytyczny lub wykonywane raporty nie wymagają złożonego przetwarzania, stosujemy schematy z niskim poziomem konsolidacji danych (0-20%). Przykładem modelu danych w tej kategorii jest podstawowy schemat gwiazdy z jedną centralną tabelą faktów i tabelami typu lookup dla każdego wymiaru.

Przetwarzanie ROLAP pozwala na stosowanie różnych poziomów konsolidacji danych zależnie od potrzeb, natomiast przetwarzanie MOLAP wymaga zawsze mocno skonsolidowanych danych, gdyż w przeciwnym razie jest mało użyteczne.

Dlatego przetwarzanie ROLAP jest niezależne od stopnia konsolidacji danych (głębokości danych) i skalowalne ze względu na liczbę wymiarów (szerokość danych) - rys. 3.

Architektura ROLAP jest lepiej przystosowana do obsługi dużej liczby danych atomowych niż MOLAP, ponieważ nie wymaga pełnej konsolidacji danych. Ponadto używając przetwarzania równoległego i partycjonowania danych, ROLAP może być skalowany do dużej liczby danych atomowych. Natomiast w modelu MOLAP agregacja danych musi przebiegać sekwencyjnie, co wyklucza stosowanie równoległego przetwarzania.

Dla baz danych o ograniczonej liczbie wymiarów (szerokości), ograniczonej liczbie sum cząstkowych (głębokości danych) i ograniczonej liczbie danych atomowych (szczegółowości) wystarczający jest model MOLAP. W miarę zwiększania szerokości, głębokości i szczegółowości danych konieczna jest migracja w stronę modelu ROLAP.

Narzędzia środowiska DSS

Kompletny zestaw narzędzi dla środowiska systemów wspomagania decyzji obejmuje specjalizowane platformy (sprzętowo-programowe) relacyjnych lub wielowymiarowych baz danych dla hurtowni danych i hurtowni tematycznych, narzędzia ekstrakcji danych, narzędzia wizualizacji danych, narzędzia matematycznego modelowania danych i dogłębnego przeszukiwania danych oraz Systemy Informacji Geograficznej (GIS).

Cały proces ekstrakcji, w szczególnoś-ci ładowanie przyrostowe, to zestaw czynności zautomatyzowanych i wykonywanych wielokrotnie, stąd konieczne jest wprowadzenie mechanizmów kontrolujących proces ekstrakcji. Proces ten można oprogramować samodzielnie za pomocą odpowiednich generatorów aplikacji lub narzędzi typu CASE albo skorzystać ze specjalizowanych narzędzi ekstrakcji i konwersji danych.

Nowoczesne metody ekstrakcji zakładają stworzenie tzw. obszaru pośredniego (staging area) lub roboczego pomiędzy transakcyjnymi systemami źródłowymi a bazą hurtowni danych. W obszarze pośrednim dane są przygotowywane i przetwarzane, a następnie przenoszone do właściwej hurtowni danych (rys. 4).

Obszar pośredni to miejsce, gdzie dane są składowane, czyszczone, a także kontrolowana jest ich poprawność. Nie jest to natomiast baza danych, do której kierowane są zapytania użytkowników. Jest kilka powodów, dla których celowe jest wprowadzenie obszaru pośredniego. Jednym z nich jest możliwość zrównoleglenia prac nad przygotowaniem danych do ładowania. Obszar pośredni może być bowiem zlokalizowany na wielu maszynach - tam niezależnie i równolegle dane mogą być przetwarzane i dopiero wówczas przenoszone do właściwych hurtowni danych. Większość współczesnych narzędzi wspomagających proces ekstrakcji rozwija się właśnie w tym kierunku.

Czasami korzystnym rozwiązaniem jest, aby dane w tym obszarze były przechowywane w postaci plików danych sekwencyjnych. Postać narzucają wybrane narzędzia lub decyzje podjęte przez projektantów. Wybór narzędzia jest sprawą istotną i warto go dokonać jak najwcześniej. Koszt wykorzystania takiego narzędzia jest jednak dość wysoki i prawie nigdy zastosowanie go nie przyspiesza pracy przy pierwszym realizowanym za jego pomocą projekcie. Dopiero doświadczenie zdobyte w pracy z tymi narzędziami pozwala na znaczące zwiększenie wydajności. Zawsze istnieje alternatywa w postaci klasycznych narzędzi programistycznych, takich jak SQL czy C.

Wybrane narzędzia ekstrakcji powinny zapewnić odpowiednie opomiarowanie procesu ładowania danych. Standardowe statystyki obejmują czas rozpoczęcia/zakończenia, ilość przetworzonych wierszy, flagi statusu poszczególnych zadań ekstrakcji, obciążenie procesora, liczbę odczytów i zapisów na dysk itp. Dysponowanie takimi statystykami ułatwi wykonanie ekstrakcji i zarządzanie tym procesem.

Narzędzia OLAP

Użytkownicy końcowi oczekują od systemów takich cech, jak łatwego tworzenia dowolnych zapytań i realizowania raportów w dowolnej postulowanej formie, bez konieczności długotrwałego studiowania struktur danych i uczenia się nowych narzędzi, przyjaznego, intuicyjnego interfejsu czy wreszcie krótkiego czasu reakcji systemu na żądanie opracowania raportu. Jednym z istotnych elementów intuicyjnego interfejsu użytkownika jest możliwość wyboru nazw kategorii danych z listy i umieszczenie ich we wzorze raportu, a także możliwość przeprojektowania raportu przez usunięcie lub zamianę nazw.

Inną cechą jest zdolność poruszania się w strukturze danych hierarchicznych z poziomu raportu końcowego, bez konieczności powrotu do etapu formułowania zapytania i możliwość zamiany istniejących nazw danych na inne (zwana drążeniem danych - drill down, drill around, drill up).

Niektóre, lecz nie wszystkie narzędzia OLAP, pozwalają na zagnieżdżanie wymiarów w raporcie tabelarycznym. Kolejne istotne cechy to możliwość rotacji danych, sortowania danych, stronicowania raportu, tworzenia raportów wielookienkowych, tworzenia wirtualnych (tymczasowych) kategorii, filtrowania danych w raporcie, przejścia z raportu tabelarycznego na graficzny, dostępu do danych z aplikacji biurowych (np. MS Office, Lotus) i projektowanie wykonywalnych (powtarzalnych) raportów.

Skalowalność

to zdolność systemu do rozwoju i zwiększania liczby wymiarów, liczby atrybutów, kategorii danych oraz liczby danych atomowych, bez konieczności tworzenia od nowa wszystkich raportów. Cecha ta jest uzależniona od stosowanej architektury serwera i wybranego modelu danych (MOLAP, ROLAP). Często decyduje o tym, czy środowisko zastosowane do stworzenia systemu DSS będzie nadal przydatne z upływem czasu oraz w miarę rozwoju firmy i wymagań użytkowników.

Kolejną ważną cechą jest data mining, czyli dogłębne przeszukiwanie danych. Pod tym terminem rozumie się zazwyczaj przeszukiwanie bazy danych w for-macie swobodnym i odnajdywanie nieoczekiwanych wzorców. Większość produktów OLAP, które rzekomo są wyposażone w data mining, w rzeczywistości oferują jedynie inteligentnego agenta, który wykrywa zadane zależności zachodzące pomiędzy danymi. Bardzo nieliczne identyfikują interesujące wzorce i relacje w bazie OLAP bez interwencji użytkownika, wykorzystując sztuczną inteligencję. Zaawansowane narzędzia OLAP umożliwiają przeprowadzenie złożonych, naukowych analiz matematycznych i statystycznych, takich jak analiza regresji, analiza wariancji, optymalizacja itp.

Istotna dla czasu przetwarzania i reakcji na zapytania jest możliwość agregacji danych. Przechowywanie danych zagregowanych zwiększa z kolei objętość bazy danych - stąd konieczny jest rozsądny kompromis.

Zdolność wyszukiwania danych operacyjnych (drill through) to własność bardzo rzadka w serwerach OLAP. Pozwala na wyszukanie szczegółowych danych operacyjnych za pomocą predefiniowanych zapytań SQL tworzonych na żądanie użytkownika. Użytkownik końcowy może więc, korzystając z jednego znanego mu interfejsu graficznego, uzyskiwać zarówno dane analityczne, jak i dane szczegółowe.

Typowe hurtownie danych są bazami tylko do odczytu i dlatego wiele serwerów OLAP nie pozwala użytkownikom końcowym na zapisywanie danych w bazie wielowymiarowej. Jednak do prowadzenia symulacji reakcji rynku, przewidywania rozwoju biznesu, ekstrapolacji danych, przechowywania wyników obliczeń i analiz na potrzeby innych użytkowników systemu konieczne jest, by baza danych OLAP była bazą do zapisu. Wszystkie serwery OLAP mogą używać czasu jako wymiaru. Ważne jest, jak szeroki jest zakres operacji na zmiennej "czas".

Model danych

Ocena przydatności zastosowanego modelu opiera się na porównaniu sposobu tworzenia obiektów (przez użytkowni-ka lub administratora), stosowaniu koncepcji centralnego repozytorium hurtowni danych (metadanych), optymalizacji poleceń dostępu do danych (np. poleceń SQL), elastyczności modelu danych hurtowni oraz możliwości podziału danych między tabele (partycjonowanie danych).

Jeśli stosowana jest koncepcja centralnych metadanych, to raporty tworzone w jednym z narzędzi przez jednego z użytkowników będą dostępne dla innych użytkowników korzystających z innych narzędzi (o ile wszystkie narzędzia korzystają z tych metadanych). W przeciwnym razie aplikacje są niezależne, a wykorzystywane przez nią obiekty nie są dostępne dla innych aplikacji. Każdy nowy raport musi być tworzony od nowa.

Wydajność serwera

Na razie brakuje zatwierdzonych i powszechnie uznawanych testów wydajności serwerów OLAP. Powstała już organizacja OLAP Council, która opracowała zestaw testów APB-1 OLAP Benchmark, jednak nie wszyscy producenci poddają swoje oprogramowanie testowaniu i dlatego trudno jest porównać wydajność różnych rozwiązań.

Dla oceny wydajności środowiska DSS istotne są:

czas reakcji systemu na zapytania (Query Response Times)

liczba zapytań obsługiwanych w ciągu minuty (Queries per Minute)

czas wykonania raportu (Query Execution)

maksymalna liczba komórek danych

sposób operowania tablicami o niewielkim wypełnieniu (Sparse Matrix)

czas ładowania danych (Bulk Load)

wydajność odświeżania przyrostowego (Incremental Load)

sposoby obliczeń (rekalkulacji)

sposoby reorganizacji.

Ponadto zapytania kierowane do hurtowni danych znacznie się różnią i serwer obsługujący bardzo sprawnie proste zapytania może w ogóle nie realizować zapytań złożonych.

Podstawowe pytania

* Jakie rozwiązania i metody tworzenia DW oraz systemu DSS wybrać? * Czy stosować analizę wielowymiarową ROLAP czy może MOLAP? * Jak przy projektowaniu całości uwzględnić środowisko klienta, by nie zmuszać go do zakupów kolejnych motorów baz danych, czy wdrażania nowych języków programowania? * Jeśli już konieczne jest zakupienie kompletnego środowiska, to jak je skomponować, by najlepiej zaspokoiło potrzeby przedsiębiorstwa? * Ta podstawowa wiedza powinna być znana komisji przetargowej już na etapie analizy ofert, jako warunek konieczny powodzenia projektu DSS/EIS w przedsiębiorstwie.

Producenci sprzętu stosują testy baz danych TPC-D, które oceniają sprzęt i relacyjną bazę danych, symulując zapytania typowe dla środowiska DSS, jednak testy te nie uwzględniają i nie porównują wydajności środowisk programistycznych DSS, a jedynie pozwalają na przybliżoną ocenę komputerów i wybranej relacyjnej bazy danych do pracy ze środowiskiem DSS. Oczywiście jest to przydatne przy wyborze sprzętu do hurtowni danych.

Koszty

Koszty zakupu i wdrożenia przetwarzania OLAP obejmują zakup oprogramowania i ewentualnie sprzętu, szkolenie, konsultacje, zarządzanie systemem. Ceny oprogramowania są bardzo różnie kalkulowane przez producentów. Jedni żądają opłat licencyjnych od każdego użytkownika końcowego (klienta), inni od liczby jednoczesnych użytkowników (portów) serwera. Niektóre licencje są odnawialne i wymagają corocznych opłat.

Dostępne na rynku produkty są bardzo zróżnicowane. Niektóre pakiety stanowią kompletne środowisko hurtowni danych, inne wymagają uzupełnienia produktami innych dostawców, gdyż oferują tylko serwer OLAP lub narzędzia OLAP dla klienta końcowego.

Przetwarzanie ROLAP bazuje zazwyczaj na zewnętrznym SQL-owym motorze bazy danych (Oracle, Informix, Sybase, NCR Teradata, MS SQL, IBM DB2) i odpowiednio dobranych narzędziach ekstrakcji, transformacji i ładowania danych. Istnieje też wiele narzędzi ROLAP zarówno typu biurkowego, jak i serwerowych pozwalających na analizę wielowymiarową danych zawartych w hurtowni. Niewiele jest kompleksowych, relacyjnych środowisk hurtowni danych. Możliwie jest jednak łączenie narzędzi różnych producentów. Inaczej to wygląda w przypadku systemów MOLAP (baza wielowymiarowa) lub nielicznych systemów HOLAP.

--------------------------------------------------------------------------------

Marcin Gorawski jest specjalistą od systemów DW/DSS, właścicielem firmy RR/Recovery Research - Gorawski Consulting Group.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200